2012-08-22 12 views
17

異なるIDを持つ行を選択しようとしていますが、すべてのフィールドを返します。MySQLのselect *で個別のIDを持つ

SELECT * DISTINCT(ID) FROM table WHERE ... 

最終的にID、市区町村、州および郵便番号が必要です。重複IDではない行を取得し、すべてのフィールドをmysql_fetch_arrayに戻すにはどうすればよいですか?

私は次のことを試してみました:

SELECT * DISTINCT(ID) FROM table WHERE ... 

SELECT DISTINCT ID * FROM table WHERE ... 

SELECT ID,City,State,Zip DISTINCT ID FROM ... 

SELECT ID,City,State,Zip DISTINCT(ID) FROM ... 

私はここに他の質問を読んでいたし、どれも役立つように見えるん。前もって感謝します!

+0

'DISTINCT'は単にテーブルから一意のIDを返します。何を正確にしようとしていますか? –

+1

私はちょうどID以上のものが必要です...ありがとう – NotJay

+1

同じIDで、どのレコードを選択する必要がありますか? – xdazz

答えて

27

GROUP BYを使用してみてください:重複がある場合、これは各idための任意のアドレスを返すこと

select id, city, state, zip 
    from mytable 
group by id 

注意を。

デモ:http://www.sqlfiddle.com/#!2/c0eba/1

+0

WHEREの前後にグループを追加しますか? – NotJay

+5

@NotJay - グループはどこから行くのですか –

+0

パーフェクト...ありがとう、ありがとう。 Group Byを初めて使う! – NotJay

関連する問題