我在MySQL數據庫結構如下表「C」:將相關記錄多對多表中的MySQL
Object1Id(INT) - PK並具有一對多的關係表'A',
Object2Id(INT) - PK並且具有一對多關係表 'A',
OccuranceId(INT) - FK並與表'B'有一對多的關係。
基本上表'C'與表'A'有許多關係,並且與表'B'有很多關係。
數據:
1, 3, 1
1, 3, 39
3, 1, 402
3, 1, 27
1, 3, 40
3, 1, 12
我試着組與查詢的記錄:
SELECT CASE WHEN least(Object1Id, Object2Id) = Object1Id THEN Object1Id ELSE Object2Id END AS Object1Id,
CASE WHEN Greatest(Object1Id, Object2Id) = Object2Id THEN Object2Id ELSE Object1Id END AS Object2Id,
count(OccuranceId) AS OccuranceCount
FROM 'C'
GROUP BY Object1Id, Object2Id
結果我從查詢回來是:
1,3,3 - 對於object1Id = 1和Object2Id = 3
1,3, - 對於Object1Id = 3和Object2Id = 1
我想的結果總結如下:1,3,6
我怎樣才能產生所需的結果?
謝謝。
可以ü格式化您的代碼pls,沒有人可以閱讀這個 –