我需要在列中找出相同值的數量並給它們一個序列號。 例如,如果我有一個表與數據的列d:MySQL:按外觀順序創建一個序列
d
甲
甲
乙
甲
乙
Ç
Ç
d
我需要用數據的連續編號創建一個列S:
DS
A 1
A 2
乙1
A 3
B 2
的C 1
的C 2
d 1
正如你可以例如看到有是三個A,他們根據外觀順序得到一個數字。與其餘數據一樣。 我不是很熟悉SQL,有人可以幫忙嗎?
我需要在列中找出相同值的數量並給它們一個序列號。 例如,如果我有一個表與數據的列d:MySQL:按外觀順序創建一個序列
d
甲
甲
乙
甲
乙
Ç
Ç
d
我需要用數據的連續編號創建一個列S:
DS
A 1
A 2
乙1
A 3
B 2
的C 1
的C 2
d 1
正如你可以例如看到有是三個A,他們根據外觀順序得到一個數字。與其餘數據一樣。 我不是很熟悉SQL,有人可以幫忙嗎?
假設有在表中的id
場決定行順序,可以使用下面的查詢,以獲得期望的結果:
SELECT id, D, (SELECT COUNT(*) + 1
FROM mytable AS t2
WHERE t1.D = t2.D AND t2.id < t1.id) AS S
FROM mytable AS t1
是的,這是我正在尋找的。現在,如果我使用LOAD DATA INFILE和一些自動增量字段,我保證通過它們在csv文件中的順序來獲取行嗎? – pankal
如果'LOAD DATA INFILE'按照它們在excel文件中列出的順序將數據插入到表中,則確保auto_increment字段將反映該順序。 –
你有任何其他的列,以確定例如你給的例子?如果沒有,那麼不能保證您將按照您在示例中提到的相同順序獲取數據。如果是,那麼也提供該欄目的詳細信息。 – Utsav
SQL中的行沒有順序 – Strawberry
然後每次執行查詢時結果可能會不同 –