我有一個表'mat'列x,y,數據,其中(x,y)是多列主鍵,所以表格包含矩陣形式的數據。問題是如何選擇多行的時候我有一個密鑰對「向量」,並有可能重複對:如何通過在SQL中重複非唯一查詢值來返回多行?
SELECT x,y,data FROM mat WHERE (x,y) IN ((0,0),(0,0),(1,1));
頗顯返回
x | y | data
--+---+-----
0 | 0 | 5
1 | 1 | 7
,而我需要:
x | y | data
--+---+-----
0 | 0 | 5
0 | 0 | 5
1 | 1 | 7
我可以從外部(在C++ /任何代碼中)循環密鑰對以獲取正確的數據,但是存在主要的性能下降,這非常關鍵。有什麼建議麼?可能嗎?幫助讚賞!
主鍵是唯一的,不能包含重複項。您的{x,y}對包含重複項,並且不能是PK。 – joop
請將主鍵改爲主題中的其他內容(例如改爲「值」)或從中刪除「非唯一」 - 否則聽起來有缺陷 –
主鍵本身在表中是唯一的,但我有一個數據向量值(x0,y0)...(xn,yn)其中可以有重複值 – Streamsoup