我還沒有代碼,因爲我從未寫過這樣的查詢。我公司的電子商務網站提供首次購買20%的折扣。我們發現偷偷摸摸的人創建多個帳戶來利用。此時創建一個帳戶時,它只會檢查一個匹配的電子郵件。比較數據庫項目以查找重複項
老闆想要什麼時,只要他登錄到管理區域,查詢就會運行並顯示具有相同名字和姓氏的任何帳戶以及其他項目。唯一可以這樣做的方式是選擇所有用戶,並循環搜索所有匹配項。我認爲這可以通過一個查詢來完成。這裏是我想要的一個例子:
$res=$mysqli->query("SELECT * from users");
while($user = $res->fetch_array()){
$res2=$mysqli->query("SELECT * FROM users WHERE firstname='".$user->firstname."'
OR lastname='".$user->lastname."' .... ");
while($user2 = $res2->fetch_array()){
print $user->id . " matches " . $user2->id;
}
}
可以這樣使用一個查詢完成,如果是的話,請proive一個例子,或鏈接。我感謝所有幫助
閱讀SQL中的「group by」。這應該可以幫助你。 – Danny 2012-01-10 15:58:19
儘管有些練習寫出了實際的查詢,但是您可以使用&count()組獲得重複計數的列表,然後選擇您的上司希望兩個名字匹配的計數> 1 – MrGlass 2012-01-10 15:58:55
姓氏,還是他想要名字或姓氏上的匹配?前者似乎對我最明智,但你的查詢中有'OR'! – 2012-01-10 16:02:49