ホームページ >バックエンド開発 >PHPチュートリアル >#1241 - オペランドには 1 つの列を含める必要があります

#1241 - オペランドには 1 つの列を含める必要があります

WBOY
WBOYオリジナル
2016-06-13 12:12:372608ブラウズ

#1241 - オペランドには 1 つの列が含まれている必要があります
SELECT o . * , (
SELECT count( * )
FROM purn_order_product AS op
WHERE op.op_oordernum = o.o_num
) AS op_cnt, (

SELECT *
FROM purn_order_product AS op
INNER JOIN purn_product AS p ON ( p.p_it = op.op_pcode )
WHERE op.op_oordernum = o.o_num
ORDER BY op.op_uid ASC
LIMIT 1
) AS p_info
FROM purn_order AS o
ORDER BY o_rdate DESC
LIMIT 0 , 50

すみません、
上記の SQL ステートメントではエラーが表示されます:
#1241 - オペランドには 1 列を含める必要があります
これを解決するにはどうすればよいですか?
もっと詳しく教えてください。
ありがとうございます
-----解決策のアイデア----------------------
選択 o 。 * ,
(SELECT count( *) FROM purn_order_product AS op WHERE op.op_oordernum = o.o_num) AS op_cnt,
(SELECT * FROM purn_order_product AS op INNER JOIN purn_product AS p ON ( p .p_it = op.op_pcode )
WHERE p.op_oordernum = o.o_num ORDER BY op.op_uid ASC LIMIT 1 ) AS p_info
FROM purn_order AS o
ORDER BY o_rdate DESC
LIMIT 0 , 50

赤い部分に問題があります。
複数のフィールドを 1 つのエイリアスに割り当てることは論理的に不合理です
その * は明示的な列名である必要があり、明示的な列名のみにすることができます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。