我有一個大約15列的表。我希望能夠做到的是選擇一系列ID並將所有列數據都呈現給我。SQL查找相同的列數據
在一分鐘,我有它的結構如下所示:
SELECT id, col_a, col_b ... count(id)
FROM table
GROUP BY col_a, col_b ...
,所有的行內返回具有相同的數據組合在一起行 - 這是我想要的一半的,但最好我想能夠獲得單行的值(如果它對於每個行ID都是相同的),或者如果存在單個差異則爲NULL。
我不確定這是否可能,但我寧願看看它是否可以在SQL查詢中編寫一些PHP循環邏輯來檢查每行的相似性。
感謝,
丹
UPDATE:
只是爲了讓這件事到今天爲止,我通過這個問題曾通過寫一個PHP函數,會發現這是重複的,然後顯示差異。不過,現在我已經爲每列創建了一個表格,並將列作爲其他表格的參考。
E.G.在MainTable中,ColA現在引用表ColA
我仍然在解決PHP的問題,主要是因爲我認爲它仍然存在上述問題,但至少現在我沒有存儲重複信息。
我不知道如果你不應該重構你的數據庫架構?擁有關係數據庫的整個想法是防止在不同的地方存儲相同的數據。儘管這樣做可能有一個完全合理的理由。用戶輸入想到...但我會驗證數據,然後將其存儲在數據庫中。 – Peter 2011-02-04 10:57:36
它基於一個圖像庫,每個圖像都有與之相關的數據。一些圖像共享相同的數據,並且在編輯多個圖像的數據時,我所做的這些人需要爲他們顯示「相同」的所有信息。 – Dan 2011-02-04 11:14:40