說我有一張3列的表格:version_id
,name
,value
。發現版本ID中名稱/值對之間的差異
從概念上講,這個表格有一堆名稱 - 值對,每個version_id
。
如何編寫一個查詢,該查詢僅顯示名稱值對在版本-ID中不相同的前兩個version_ids的名稱值對?
此外,我想知道是否有一種方法可以將不同的名稱 - 值對並排放置在不同的version_ids中,也可以讓結果中的行彼此相鄰。
基本上,我想要比較兩個版本的差異。
例子:
version_id name value
23459 jsLibrary2 JQuery_1_4_3
23459 jsLibrary1 CrossDomainAjax_1_0
23456 jsLibrary2 JQuery_1_4_2
23456 jsLibrary1 CrossDomainAjax_1_0
23456 groovyInclude2 GroovyUtilities
23454 jsLibrary2 JQuery_1_4_2
23454 jsLibrary1 CrossDomainAjax_1_0
23454 groovyInclude2 GroovyUtilities
理想的查詢結果:
23456 jsLibrary2 JQuery_1_4_2
23459 jsLibrary2 JQuery_1_4_3
23456 groovyInclude2 GroovyUtilities
23459 NULL NULL
注意,最好將注意新的名稱 - 值對(其中名稱不小VERSION_ID存在)和刪除名稱 - 值對(其中名稱不存在於較大的version_id中)
你能舉一個小例子嗎? – 2012-03-14 01:36:13
我添加了一個例子。 – Muhd 2012-03-14 01:49:48
你試過了:select table_id,name,value from tablename group by concat(name,「」,value) – 2012-03-14 02:03:27