Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Сортировка
|
|||
|---|---|---|---|
|
#18+
Имеется поле varchar(7) - номер дома (в нем могут быть буквы) Сейчас сортируется по нему так: 1 11 2 22А 5 и т.п. Нельзя ли сделать 1 2 5 11 22А У кого нибудь есть варианты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2001, 11:15 |
|
||
|
Сортировка
|
|||
|---|---|---|---|
|
#18+
Naprimer tak: SELECT fld FROM building ORDER BY CAST(CASE patindex('%[A-Z]%', fld) WHEN 0 THEN fld ELSE left(fld, patindex('%[A-Z]%', fld)-1) END AS int) , CASE patindex('%[A-Z]%', fld) WHEN 0 THEN '' ELSE substring(fld, patindex('%[A-Z]%', fld), LEN(fld)- (patindex('%[A-Z]%', fld)-1)) END ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2001, 15:12 |
|
||
|
Сортировка
|
|||
|---|---|---|---|
|
#18+
Что-то слишком сложно. Может проще добавить спереди пробелов, что-бы строки були одинаковой длины? тогда '_11' будет > '__2' select field from table where ... order by REPLICATE(' ', X - DATALENGTH(field)) + field) здесь X - мксимальная предполагаяемая длина строки, в вашем случае = 7 если дело будет на 2000, то для сортировки будет использоваться индекс по field (если он есть) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2001, 15:27 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32016795&tid=1825041]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
62ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 251ms |
| total: | 400ms |

| 0 / 0 |
