fom
認識キーワードではありません。 MySQLパーサはこれで何をするべきかわからないので、 "無効な構文"に関するエラーを投げます。
ネストされたINサブクエリーの代わりにジョイン操作を使用することを検討してください。当社が保証されている場合:
- のproduct_idが
- ORDER_IDが
- CUST_IDは、顧客テーブル内で一意であるordertableテーブル内で一意である製品テーブル内で一意である
その後、我々は同等の結果セットを取得することができ、注文された別個の製品の平均価格...
SELECT AVG(p.product_price)
FROM (SELECT l.product_id
FROM orderline l
JOIN ordertable o
ON o.order_id = l.order_id
JOIN customer c
ON c.cust_id = o.cust_id
WHERE c.city = 'Tuscon'
GROUP BY l.product_id
) q
JOIN product p
ON p.product_id = l.product_id
あなたがいる
SELECT AVG(p.product_price)
FROM product p
JOIN orderline l
ON l.product_id = p.product_id
JOIN ordertable o
ON o.order_id = l.order_id
JOIN customer c
ON c.cust_id = o.cust_id
WHERE c.city = 'Tuscon'
でなければなりません。投票を終了する。 – bernie
更新された質問(クエリでnullを取得することについて)は、データの問題のように聞こえます。データを見ることなく、誰でも手助けすることは非常に困難です。クエリ自体が正しく表示されるようになりました。 –