Сортировка столбца с цифрами

Тема в разделе "SQL", создана пользователем San4o09, 19 янв 2010.

  1. San4o09

    San4o09 Гость

    Всем доброго времени суток

    Я новичек в написание запросов на SQL. Много не понимаю. Буду рад любой помощи.
    Есть столбец, в котором
    строка 1
    строка 5
    строка 27
    строка 3
    строка 33

    Как с помощью чего отсортировать с учетом цифр после слова?

    п.с. смотрел поиск этого вопроса и похожая тема есть. Там предлагается решение с функцией. но когда запускал со своими названиями говорит, что функция должна быть первой, а потом 'invalid syntax near SELECT'. какой должен быть синтаксис у функции.
     
  2. DZX

    DZX Гость

    В конкретном случае например так (field - это поле ля сортировки)

    Код (Text):
    select field from table1
    order by cast(substring(field,charindex(' ',field),len(field)-charindex(' ',field)+1) as int)
     
  3. San4o09

    San4o09 Гость

    Спасибо.
    Еще забыл в столбце могут быть просто слова. т.е.
    стр 1
    стр 20
    стр 3
    клмн
    опрст
    ззз
    ууу 1
    ннн 2

    Какой в этом случае запрос должен быть?
     
  4. DZX

    DZX Гость

    Слова должны быть в конце или начале сортировки?
     
  5. Aleksey

    Aleksey Гость

    Извращение-то какое! :angry2:
    По таким данным сортировать - это жесть!
    Но не в структуре БД суть, я просто хотел добавить, что под Oracle это решение не пойдет.
     
  6. DZX

    DZX Гость

    Согласен :( извращение еще то, что говорит о неправильно спроектированной базе данных. Мне кажется надо разделить на два поля и сортировать спокойно.
    Решение под T-SQL.
     
Загрузка...

Поделиться этой страницей