當(dāng)前位置:博客首頁>>編程基礎(chǔ) >> 閱讀正文

Mysql中如何查詢所有唯一記錄

作者: 鄭曉 分類: 編程基礎(chǔ) 發(fā)布于: 2012-08-25 07:30 瀏覽:9,258 沒有評論


Mysql中如何查詢所有唯一記錄?

今天剛下班時看到網(wǎng)上有人問了一個mysql問題,關(guān)于如何在mysql中查詢出所有不重復(fù)的記錄,搞了很長時間才寫了條,算是學(xué)習(xí)一下吧,自己對mysql也不是很了解。下面來看一下具體問題:

1.表結(jié)構(gòu)是這樣的:


該表中aa、bb都有重復(fù),而cc 、dd都沒有重復(fù),問如何能查詢出所有未重復(fù)的記錄呢?

最終我給出的SQL是這樣的:

SELECT * FROM table_name GROUP BY name HAVING(COUNT(*)=1);

其中使用了 group by、having和count() 三個方法,不知道為什么把group by放到 having的后面就會報錯,放到前面就正常。。。

其實一開始我直接想這樣:

SELECT *,COUNT(*) as counts?FROM table_name WHERE counts=1 GROUP BY name ;

結(jié)果一執(zhí)行就報語法錯誤,網(wǎng)上搜了一下才知道m(xù)syql中的別名是不能用于where條件查詢中的。

由此,一條簡單的語句實現(xiàn)了Mysql中如何查詢所有唯一記錄的方法。

? ? ? ?

本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉(zhuǎn)載時請注明出處及相應(yīng)鏈接。

本文永久鏈接: http://www.yjfs.org.cn/mysql-how-to-query-all-unique-records.html

發(fā)表評論

change vcode