Как добавить несколько порядковых номеров для одного представления SQL в MySQL - PullRequest
2 голосов
/ 07 февраля 2011

что я хотел бы сделать, это добавить несколько порядковых номеров к одному представлению sql в MySQL. Рассматривать следующий пример таблицы:

Folder 1, File 1
Folder 1, File 2
Folder 2, File 3
Folder 3, File 4
Folder 3, File 5
Folder 3, File 6

Что бы я хотел получить в результате:

1, Folder 1, File 1
2, Folder 1, File 2
1, Folder 2, File 3
1, Folder 3, File 4
2, Folder 3, File 5
3, Folder 3, File 6

Я знаю, как добавить один единственный порядковый номер ко всему виду, используя переменные, но я не знаю, как решить мою конкретную проблему. Надеюсь, кто-нибудь может помочь мне с этим.

Большое спасибо!

Cheers, Johannes

1 Ответ

2 голосов
/ 07 февраля 2011

Вместо использования одной переменной вам потребуется две, сбрасывайте нумерацию строк при каждом изменении группы.

select folder, file,
  @r = case when @g = folder then @r+1 else 1 end SequenceNo,
  @g := folder
from (select @g:=null) g
cross join tbl
order by folder, file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...