我有一個表,它包含鏈接。因此,其中包含2列包含網址;來源和目的地。 我需要獲取表中存在的所有唯一URL的列表(創建查找表),但URL當然可以在兩列中。在2列上使用不同值似乎會返回唯一的組合,而不是單個值。我可以在1個查詢中做到這一點,或者我應該使用2(每列一個),然後在該結果上使用3d獨立選擇?MySQL從2列中選擇不同的值
回答
您可以使用UNION
,這將刪除重複的(而UNION ALL
將保留副本)
SELECT FirstUrlColumn AS url
FROM myTable
UNION
SELECT secondUrlColumn AS url
FROM myTable
上的方式來檢查輸出的建議的DISTINCT查詢?它給了我與第二列的不同查詢完全相同的行數。當然這可能是正確的,但可以肯定。 – Chrisvdberge 2013-05-08 09:07:31
好吧,如果你不信任你的RDBMS,這是一個問題;)你可以手動檢查你的一小部分數據,但是,UNION確實......它該做什麼!也許顯示你的查詢,如果你選擇更多的領域不只是網址。 – 2013-05-08 09:11:59
@Chrisvdberge您可以嘗試與UNION ALL,看你是否發現差異,但... – 2013-05-08 09:13:04
嘗試以下操作:
SELECT DISTINCT url
FROM (
SELECT col1 AS url
FROM TABLE
UNION
SELECT col2 AS url
FROM TABLE
) urls
不需要在聯合查詢上選擇不同。聯盟將刪除重複項! – 2013-05-08 08:59:39
- 1. 從同一列中選擇2個值
- 2. MySQL從2個表中選擇不同的值和計數
- 3. MySQL從不同條件的同一列中選擇多個值
- 4. MySQL:從2個不同的表中選擇不同的?
- 5. 從一列中選擇不同的值
- 6. MySQL - 選擇2列的不同組合並分別返回值
- 7. Mysql:如何從數據庫列中選擇不同的值
- 8. MySQL的:從選擇不同
- 9. 從2表中選擇2個不同的值
- 10. MySQL:選擇2次相同的字段與不同的值
- 11. 從mysql中的多個列中選擇不同的列
- 12. 從MySQL的2列中選擇多個值
- 13. 在MySQL表中選擇不同的值
- 14. 在MySQL選擇在同一列中兩個不同的值
- 15. Mysql從2表中選擇
- 16. 選擇2個不同的行MySQL
- 17. PHP MySQL - 從表1中選擇不在表2中的值
- 18. mysql:在表中選擇不同的列?
- 19. 從列選擇在MySQL不同的價值
- 20. 根據不同的列值從一列中選擇值
- 21. MySQL:選擇2列與不同的列名稱和數額
- 22. MySQL從同一個單元格中選擇不同的值
- 23. 從同一個表中選擇兩個不同的值(mysql)
- 24. 從2列中選擇唯一值
- 25. PHP MySQL:從同一個表中選擇不同列的問題
- 26. MySQL,從不同的表中選擇... IF
- 27. 用於從另一列有不同值的列中選擇不同值的SQL
- 28. MySQL查詢使用相同的選擇模式選擇2列
- 29. 從表中選擇所有,其中2列是不同的
- 30. MySQL:從值列表中選擇
你可以給樣品記錄? – 2013-05-08 08:56:48
我想你需要使用'GROUP BY'。 – 2013-05-08 08:58:33
後續問題:當我有查找表時,如何獲得第一個表中存在的這些值的唯一組合? 所以基本上ID的從查找表上的2列... – Chrisvdberge 2013-05-08 09:09:18