2017-05-08 9 views
0

私は最初に「はい」と表示され、以降のすべての時間が「いいえ」と表示されるように、Access 2013でクエリを書きたいと思います。私は以下のサンプルを含んでいます。 「Distinct」列は、クエリの生成を希望する列です。マーク重複のアクセス

はここであなたに


Word  Distinct 
First  Yes 
Second Yes 
First  No 
Third  Yes 
+0

プライマリキーとして使用する追加フ​​ィールドはありますか?データはどのようにソートされますか? – SandPiper

+0

重複する値をマーキングする目的に応じて、 'Group By'句と' COUNT'のような他の集約SQL関数を使用して重複したクエリを検討し、重複を見つけたり処理することができます。 –

答えて

1

ありがとうござい一つのアプローチです:

SELECT *, IIf(DMin("ID","Table1","[Word]='" & [Word] & "'")=[ID],"Yes","No") AS FirstWord 
FROM Table1; 

別:私のようにそれを使用して回避していますので、

SELECT *, IIf([ID] = (SELECT TOP 1 ID FROM Table1 AS Dupe WHERE Dupe.Word = Table1.Word ORDER BY Dupe.Word, Dupe.ID), "Yes", "No") AS FirstWord FROM Table1; 

DISTINCTは予約語でありますフィールド名。

+0

これはもちろん、単一列の主キー[ID]があり、データソースがテーブルではなく、どちらもOPによって示されていないことを前提としています。いずれの問合せでも、最初のオカレンスが実際に最初にソートされるようにするには、 'ORDER BY [ID]'を実行する必要があります。 (IDでソートされる可能性がある場合でも、ORDER BY句で指定されていなければ保証されません。ソースオブジェクトが直接テーブルではなく、別のクエリである場合は特に当てはまります) –

+0

現在、自動番号付きで簡単に追加できるIDフィールド。 http://www.accessforums.net/showthread.php?t=65965でクロス投稿 – June7

関連する問題