У меня сейчас есть база данных с одной таблицей, которая содержит следующие поля:
имя, Люкс
Это моя первая совместная реализация базы данных для отслеживания тестов, и я понимаю, что способ их хранения неэффективен, но, как я уже сказал, это мой первый раунд этого.
Некоторые из имен принадлежат люксам, а некоторые - нет.
Предположим, что данные выглядят так:
Name | Suite
ggg | NULL
aaa | NULL
ddd | a_suite
fff | a_suite
ccc | some_suite
eee | some_suite
bbb | NULL
ЭСТ ..
Если я введу следующую команду:
select distinct name,suite from webpagetest order by name,suite
Тогда я получаю результаты, которые выглядят так:
Name | Suite
aaa | NULL
bbb | NULL
ccc | some_suite
ddd | a_suite
eee | some_suite
fff | a_suite
ggg | NULL
Однако то, что я пытаюсь сделать, это сначала упорядочить результаты по комплекту, а затем, если поле комплекта не равно нулю, используйте поле комплекта, чтобы расположить их по алфавиту. Если suite имеет значение null, разместите их в алфавитном порядке по имени. Итак, результаты должны выглядеть так:
aaa | NULL
ddd | a_suite
fff | a_suite
bbb | NULL
ggg | NULL
ccc | some_suite
eee | some_suite
В этом случае он организуется по столбцу имени, если в столбце набора ничего нет, и если набор не равен нулю, то вместо него будет использоваться значение набора.
Надеюсь, это не слишком плохо написано, и кто-то может понять, о чем я здесь спрашиваю.
Спасибо!
Мэтью