1

ANSI規格でサポートされているSelectCountSQLステートメントのリストがあるかどうか疑問に思っていますか?以下の3つのバリエーションは私が知っているものです。where句は以下の3つすべてで使用できますか?

SELECT COUNT(*) AS RowCount FROM table_name
SELECT COUNT(ColumnName) AS RowCount FROM table_name
SELECT COUNT(DISTINCT ColumnName) AS RowCount FROM table_name
4

2 に答える 2

2

ほとんどすべての DBMS が使用する SQL 標準は ANSI 92 標準です。これはhttp://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txtにあります。124ページにあなたが探している情報があります。ほとんどの DBMS は ANSI 92 標準に加えて何かを提供しますが、これはすべての DBMS の最小公分母のようなものです。

于 2012-01-21T00:48:54.247 に答える
0

標準仕様は、 に特別な意味を与えCOUNT(*)ます。それ以外の場合ColumnNameは、実装定義の有効な式です。

ところで、あなたは1つ逃しました:

SELECT COUNT(ALL ColumnName) AS RowCount FROM table_name;

と同様にSELECT ALLALLがデフォルトであり、省略できます。ほとんどの場合は省略できます。

于 2012-01-21T07:21:03.013 に答える