2016-03-24 9 views
-2

私は、一連の図面に配置されたすべてのラベルを報告するテーブルを持っています。各ラベルにはファイル名と図面番号があります。私は、特定のファイル名のすべてのエントリと図面番号の重複についてこのテーブルをフィルタリングしたいと思います。これにより、どの図面に同じラベルの倍数があるかがわかります。たとえば、下のリンクの図には、DWG#1に3つのラベル1があり、DWG#2にラベル#1が2つあることが示されています。これは、私がこれらの2つの図面で複製を整理する必要があることを示しています。これらのエントリを報告するSQL Serverで実行するステートメントが必要です。ありがとう!他のアイテムの重複を持つ1つのアイテムすべてを照会する方法

Example

+2

をSOされて参加します。この目的のために適切に書式設定されたテキストを使用してください。 –

+0

ここでは、MySQLとMS SQL Serverの両方を使用していますか?関与していない製品にはタグを付けないでください。 – jarlh

+1

[Select文を使用して特定のフィールドで重複を検索する](http://stackoverflow.com/questions/4434118/select-statement-to-find-duplicates-on-certain-fields) –

答えて

0

あなたは、テーブルにあるどのように多くの重複を判断するためにCOUNT(*)関数を使用しようとすることができます。

SELECT COUNT()、colomn_filename、colomn_filenameによってtable_nameの グループからcolomn_drawingnumber 、colomn_drawingnumber た回数()> 1

0
SELECT fileName, drawingNo, count(*) FROM TableName 
GROUP BY fileName, drawingNo 

結果:

ラベル1 DWG 1位3

ラベル1 DWG#2 2

あなたが本当にあなたは、左使うと同じ結果が必要な場合は3210

は、ここで推奨された画像の形式でサンプルデータを提供する

SELECT a.fileName, a.drawingNo FROM TableName a 
LEFT JOIN (
SELECT fileName, drawingNo FROM TableName 
GROUP BY fileName, drawingNo 
HAVING COUNT(*) > 1 
) b ON a.fileName = b.fileName AND a.drawingNo = b.drawingNo 
関連する問題