2017-09-19 41 views
1

假設我有一個名爲table的數據集,其中有7個數據,如[a,b,c,d,e,f,g]。我想寫一個查詢來找出特定數據的數量。例如,我想找到'd'。sql應該給我一個數字'3'。如果我想找到'g',那麼sql應該給我一個數字'6'。 請幫助。謝謝。如何查找SQL中的特定數據的數量(MySQL)

+0

所以數組存儲在數據庫? –

+1

你正在使用什麼RDBMS? SQL Server,MySQL還是什麼? –

+1

這是一個很差的問題。要改進它:使用create table發佈一個真正的表。另外指定一個數據庫品牌或者只是說'agnostic sql'。請記住,每個數據庫分支的答案都不相同。也解釋你試過了什麼。 – danihp

回答

3

由於您使用的是MySQL不支持排名的功能,那麼你可以這樣做:

SELECT col, rank -1 as rownumber 
FROM 
(
    SELECT col, 
     @rownum := (@rownum + 1) AS rank 
    FROM Table1 t, 
     (SELECT @rownum := 0) r 
) AS t 

mysql demo

這會給你:

| col | RowNumber | 
|-----|-----------| 
| a |   0 | 
| b |   1 | 
| c |   2 | 
| d |   3 | 
| e |   4 | 
| f |   5 | 
| g |   6 | 

然後你就可以只是過濾你想要的值。

+0

謝謝達米安。 – Michael

+0

@邁克爾 - 不客氣,請接受答案,如果你發現它有幫助,謝謝。 –

相關問題