1

こんにちはベロとして私のクエリをしようとしています。クエリの 2 つの異なるバージョンとそのエラー メッセージを参照してください。

SELECT first_value(col1) AS 'inv',col2 
FROM dbo.table  
--first_value' is not a recognized built-in function name.  

SELECT dbo.first_value(col1) AS 'inv',col2 
FROM dbo.table  
--Cannot find either column "dbo" or the user-defined function or aggregate "dbo.first", or the name is ambiguous.

SELECT first_value(col1) AS 'inv',col2 
FROM dbo.table 
GROUP BY col2  
--'first' is not a recognized built-in function name.

SELECT dbo.first_value(col1) AS 'inv',col2 
FROM dbo.table 
GROUP BY col2  
--Cannot find either column "dbo" or the user-defined function or aggregate "dbo.first", or the name is ambiguous.  

助けてください!

4

1 に答える 1

-1

テーブルから最上位/最初のレコードを取得しようとしている場合は、行が最初/最上位の行として定義される基準を指定する必要があります

SELECT top 1  col1 AS inv,col2  
FROM dbo.table 
ORDER BY col1 --or whatever criteria you need here

私が知る限り、first_value は MS SQL Server 2012 関数のようですが、これには順序句も必要です - http://msdn.microsoft.com/en-us/library/hh213018.aspx

于 2012-04-25T15:06:42.423 に答える