0

誰でもクエリを手伝ってもらえますか?

以下を試してみましたが、エラーが発生します

SELECT Column1, Column2, Column3 FROM Table WHERE [Column1] NOT IN 
(SELECT [Column1] FROM Table GROUP BY [Column1] HAVING COUNT([Column]) > 1)

サブクエリ [Column1] の MEMO、OLE、またはハイパーリンク オブジェクトが無効です。

4

3 に答える 3

4

Use Group By with Having clause:

SELECT Column1, MIN(Column2)AS Column2, MIN(Column3)AS Column3
FROM dbo.Table
GROUP BY Column1
HAVING ( COUNT(Column1) = 1 )

Should work since there's only one row per "group".

于 2012-11-14T15:23:25.597 に答える
1

元のクエリは、column1 の代わりに column があっただけで機能するはずです。

 SELECT Column1, Column2, Column3 FROM TableName WHERE [Column1] NOT IN 
(SELECT [Column1] FROM TableName GROUP BY [Column1] HAVING COUNT(Column1) > 1)

参照: http://sqlfiddle.com/#!3/d99a8/5/0

于 2012-11-14T16:03:07.057 に答える
0

私が得る限り、[Column1] が一意であるすべてのデータが必要です (1 回だけ表示されます)。

DECLARE @x TABLE (col1 INT, col2 INT, col3 INT)

INSERT INTO @x
        ( [col1], [col2], [col3] )
VALUES  ( 1, 2, 3  )
        ,( 1, 4, 5 )
        ,( 2, 6, 7 )

SELECT * FROM @x

SELECT col1, col2 , col3 FROM @x
WHERE col1 NOT IN 
    ( SELECT [col1]  FROM @x GROUP BY [col1] HAVING  COUNT(*) > 1 )
于 2012-11-14T15:29:39.697 に答える