SQL2000: порядок столбцов по умолчанию при выборе из syscolumns
Я запускаю следующий запрос:
select syscolumns.name
from syscolumns,sysobjects
where
syscolumns.id = sysobjects.id and
sysobjects.name='TABLE_NAME'
В чем может быть причина того, что в одной системе столбцы возвращаются в алфавитном порядке, а в другой - в том порядке, в котором столбцы были добавлены в таблицу?
Я знаю, что не должен полагаться на порядок по умолчанию, и я должен использовать ORDER BY, но я хочу знать, почему это так. Упорядочение?
Спасибо!
1 ответ
Не существует порядка по умолчанию, на который вы могли бы "положиться" - если вы явно не укажете ORDER BY
,
То, что вы видите, - это ожидаемое поведение; в зависимости от количества факторов влияния порядок возвращаемых строк может отличаться от случая к случаю, от сервера к серверу.
Это может быть связано с расположением страниц, которые SQL Server читает с диска, или многими другими факторами.
Вкратце: если вам нужен заказ, попросите его ORDER BY
- это действительно все, что нужно знать.