0

私がこのようなSQLを持っているとしましょう:

select * from tba

テーブルtbaにデータがある場合、次のように表示されます。

id    name    num
1     tom     100
2     jack    200

今、私はどこの条件でクエリtbaが必要です

select num from tba where id = 3;

ここに質問があります:このSQLによるデータはもうありません、次のようになります:

id    name    num
//no data, just have column name

だから、私はそれが結果がないか、ゼロだけであることを教えてもらいたいです:

num
0

どうすれば結果を得ることができますか?

ありがとう!!

4

2 に答える 2

3

これを試して:

SELECT COALESCE(MAX(num), 0) AS num
FROM   tba
WHERE  id = 3

すべての列を選択したい場合は、次のことができます。

SELECT COALESCE(MAX(id), 0)       AS id,
       COALESCE(MAX(name), 'N/A') AS name,
       COALESCE(MAX(num), 0)      AS num
FROM   tba
WHERE  id = 3;

SQLFiddle デモ

于 2012-08-01T06:59:31.850 に答える
0
SELECT ISNULL(num,0) AS num
  FROM tba
 WHERE id = 3
于 2012-08-01T07:01:54.097 に答える