2016-10-12 6 views
0

2つのテーブルProduct_TreeとProductの2つのカラムModel_NumberとManufacturerでジョインを作成し、一致するカラムを返します。ここで2つのテーブルのSQL結合ステートメント

は2つのテーブルです:

表:Product_Tree

Col1,Col2,Model_Number,Col3,Manufacturer,Col4 
111111,Pepsi,aaa,111111,aaa,description 
222222,Miranda,bbb,222222,bbb,'description 
333333,Cola,bbb,333333,bbb,description 

表:ここでは製品

Model_Number,Manufacturer 
a,a 
b,b 
c,c 
d,d 

はクエリです:

SELECT Product_Tree.col0,Product_Tree.col1,Product_Tree.col2,Product_Tree.col3,Product_Tree.Model_Number,Product_Tree.Manufacturer 
FROM Product_Tree 
JOIN Product ON Product.model_number LIKE ''''%''''Product_Tree.MODEL_NUMBER''''%'''' 
AND Product.manufacturer LIKE ''''%''Product_Tree.MANUFACTURER''''%''''; 

私はこのエラーを取得しています:

ORA-00911: invalid character 
+0

これはなぜmysqlとタグ付けされていますか? – MontyPython

+0

これは "UNIX"とどのように関連していますか? –

答えて

1

あなたのコラムproduct_tree.manufacturerにご%ワイルドカードを連結する連結演算子を使用する必要があります:

SELECT Product_Tree.col0,Product_Tree.col1,Product_Tree.col2,Product_Tree.col3,Product_Tree.Model_Number,Product_Tree.Manufacturer 
FROM Product_Tree 
JOIN Product ON Product.model_number LIKE '%' || Product_Tree.MODEL_NUMBER || '%' 
AND Product.manufacturer LIKE '%' || Product_Tree.MANUFACTURER || '%'; 

私はこのことを推測していますクエリはスクリプトの中にあり、一重引用符'を使用して引用されているため、ここに一重引用符があります。その場合、引用されたSQL文は次のようになります。

SELECT Product_Tree.col0,Product_Tree.col1,Product_Tree.col2,Product_Tree.col3,Product_Tree.Model_Number,Product_Tree.Manufacturer 
FROM Product_Tree 
JOIN Product ON Product.model_number LIKE ''%'' || Product_Tree.MODEL_NUMBER || ''%'' 
AND Product.manufacturer LIKE ''%'' || Product_Tree.MANUFACTURER || ''%''; 
関連する問題