6

サブクエリが外部クエリに2つの値を返すことは可能ですか?そのような:

SELECT 1, 
       (SELECT COUNT(*), MAX(*) FROM test_table WHERE test=123) 
FROM another_table

それとも、これを行うためのより良い方法はありますか?

4

4 に答える 4

7

FROMフィールドリストではなく句でサブクエリを使用する場合は、出力をテーブルとして扱い、個別の列を参照できます。

于 2010-12-20T00:39:31.277 に答える
1

結果として数字を選択しているだけなので、次のようにすることはできません。

SELECT 1, COUNT(*), MAX(*) FROM test_table WHERE test=123
于 2010-12-20T00:38:21.997 に答える
0

ありえない

mysql> select 1, (select 2, 3) from dual;
ERROR 1241 (21000): Operand should contain 1 column(s)

2つのテーブルを処理していて、結果が1行になる場合は、結合を実行する必要があります。

于 2010-12-20T00:39:20.700 に答える
0

うーん、それはあなたがデータで何をしたいかに正確に依存します、あなたはJOIN構文を使って2つのテーブルを結合することができます、そしてテーブルの1つは実際にサブクエリであることができます。それはおそらくあなたが望むものだと思います。

私はあなたの現在のクエリが何をするかさえユーザーではありません。

ドキュメント: http ://dev.mysql.com/doc/refman/5.0/en/join.html

于 2010-12-20T00:42:37.743 に答える