4

次の SQL Server クエリがあります。

SELECT ISNULL(MIN(P), 999) AS FLD
FROM (SELECT '0' AS P) AS T
WHERE (1 > 4)

このクエリの出力が '*' になるのはなぜですか?

説明してください

ありがとう

4

1 に答える 1

11

ISNULL最初の引数のデータ型を使用します。

これはvarchar(1)、リテラルのデータ型であるためです'0'

999切り捨てられるため、SQL Server は「*」を表示します

于 2013-04-04T12:48:08.310 に答える