2014-10-03 70 views
0

數據計數我有下面的一個得到基於ID在MySQL結果

id | id_fk | data | 
------------------------- 
1 | 2 | data1 | 
2 | 2 | data2 | 
3 | 1 | data3 | 
4 | 3 | data4 | 
5 | 1 | data5 | 
------------------------- 

喜歡這裏的表我有表ID爲「身份證」,從另一個表作爲id_fk外鍵。

我試圖實現的是,以增量模式獲得每個外鍵的計數。也就是說,如果id_fk - > 2發生在第一次,則計數應爲1,在下次發生計數變爲2時,以此類推,所有id_fk。我嘗試了很多方法。但沒有人給我實際的產出。

從bouve表,結果表看起來像

id_fk | count | 
------------------ 
1  | 1 | 
1  | 2 | 
2  | 1 | 
2  | 2 | 
3  | 1 | 
------------------ 

請幫我唯一的這個..任何幫助將不勝感激。

謝謝

+0

你想要的東西像ROW_NUMBER。看到http://stackoverflow.com/a/9652359/3630826 – 2014-10-03 05:40:24

回答

1

它可以完美兼容加盟。

select t1.id_fk,t1.id,count(*) 
    from your_table t1 
    left join your_table t2 
    on t1.id_fk=t2.id_fk and t1.id>=t2.id 
group by t1.id_fk,t1.id 

Sql Fiddle Demo

+0

它的工作原理... :)謝謝... :) – Arun 2014-10-03 08:31:47

2

試試這個

​​
+0

這太工程好.... :)謝謝你... – Arun 2014-10-03 08:33:07