用SQL語句查詢數據庫中某一字段下雷同值的記載辦法。本站提示廣大學習愛好者:(用SQL語句查詢數據庫中某一字段下雷同值的記載辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是用SQL語句查詢數據庫中某一字段下雷同值的記載辦法正文
明天接到一義務,有一張先生信息表(Excel表),外面有一萬多筆記錄,如今要把這張表導入到數據庫中,並設置先生學號為主鍵,然則如今這張表中的先生學號有反復的記載,我必需先找出這些反復的記載,然後再停止挑選,經由研討成績終究獲得處理。
以上成績現實上就是查詢數據庫表中某一字段值反復的記載,這裡省略若何將Excel表導入到數據庫步調,只評論辯論用SQL查詢數據庫中某一字段下雷同值的記載辦法。
如今假定數據庫表名為student,外面有字段Sno(學號),ID(身份證),這裡供給兩種查詢的辦法:
辦法一:經由過程學號和身份證字段來查詢(數據庫履行效力高,推舉)
SELECT *
FROM student AS A
WHERE (Sno IN (SELECT Sno FROM student AS B WHERE A.ID <> B.ID))
辦法二:只經由過程學號字段來查詢(數據庫履行效力低,不推舉)
SELECT *
FROM student AS A
WHERE (SELECT COUNT(*) FROM student WHERE Sno=A.Sno)>1
從運轉成果來看,辦法一和辦法二雷同,然則履行效力完整分歧,辦法一履行一萬多條數據只須要幾秒鐘便可,辦法二則須要好幾分鐘,並且還有逝世機景象。不曉得還有無其他辦法,假如有高手曉得請指教!!!