/ / GROUP-BY式には、外部参照ではない少なくとも1つの列が含まれている必要があります。-sql-server、sql-server-2008、tsql

GROUP-BY式には、外部参照ではない少なくとも1つの列が含まれている必要があります。-sql-server、sql-server-2008、tsql

私はこのクエリを持っています:

SELECT
SolutionName    -- Solution_NAM
from  Table_View
Group By 1

Table_Viewはもちろんビューです。 私はこのエラーメッセージをgettignです:

各GROUP BY式には、外部参照ではない少なくとも1つの列が含まれている必要があります。

これを解決するのを手伝ってもらえますか? それはMs SQL Server 2008の中です

回答:

回答№1は4

あなたは1でグループを与えることはできません

お試しください

SELECT
SolutionName    -- Solution_NAM
from  Table_View
Group By SolutionName

回答№2の場合は0

GROUP BYに関するマーティンの声明は正しいですが、SQLのさまざまなバージョンでは、ORDER BYの列名の代わりに列の序数を使用できます(ほとんどのコアSQL構文でISO標準であるTSQLを考えています)。

しかし、列序列を使用しないことが賢明ですORDER BYステートメントでは動作しますが、どうして?問合せがストアド・プロシージャの一部であり、元の表(またはビュー)に列を追加して表スキーマを変更した場合、変更によって元の列順序が維持されるという保証はありません。これは意図しない無意味なコラムで注文する可能性があることを意味し、それがあなたのアプリケーションを破ります。

列名を使用する方がはるかに良い方法です(カウント(*)と同じですが、生産上の日に日に光が見えないようにあなた自身の使い方をアドホックで照会するならば、それを掛けないでください)。