У меня есть таблица с идентификатором столбец (уникальный, основной), имя (не уникальное - на самом деле, скорее всего, повторяется) и столбец флага, который имеет значения 0, 1 или 2. Допустим, я переупорядочиваю таблицу с помощью команды
SELECT id, name, flag ORDER BY name , id
Я хочу создать с помощью SQL список имен, в котором, когда строки в переупорядочении читаются вниз, есть две соседние строки с тем же именем и флагами значения 0 и 1 (в этом порядке). Кроме того, в этом списке я хочу иметь идентификаторы двух строк, в которых это произошло. Если это произошло более одного раза, должно быть несколько строк.
Так, например, в следующем
id name flag
4 Bob 0
5 Bob 2
6 Bob 1
1 Cathy 0
7 Cathy 1
3 David 0
2 Elvis 2
8 Elvis 0
9 Elvis 1
я хотел бы выбрать
name id1 id2
Cathy 1 7
Elvis 8 9
Как мне это сделать?
Я использую MySQL.
РЕДАКТИРОВАТЬ : обратите внимание, что идентификаторы для этих соседних строк могут не быть последовательными; они идут подряд, только если мы заказываем по имени. См., Например, Кэти.
Спасибо!