Автор Тема: выборка слов, начинающихся на определенную букву  (Прочитано 2481 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Foshvad

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 307
  • +0/-0
  • 0
    • Просмотр профиля
Знаю, что просто и в manual\'е есть, но что-то никак не получается :(

Надо выбрать все записать, начинающиеся на определенную букву.

SELECT SUBSTRING(name,0,1) AS letter,* from table  where 1 ="A"

Но почему-то упроно возвращается пустой результат (без ошибки), хотя записи такое однозначно есто.
A - английская.

Оффлайн fidget

  • Непоседа
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 607
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
select * from table_name where name like \'A%\'
На Машине Тьюринга далеко не уедешь.

Оффлайн Foshvad

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 307
  • +0/-0
  • 0
    • Просмотр профиля
Дык LIKE медленный дюже, на сколькоя знаю :(
Вроде с substring быстрее будет

Оффлайн Alexandr

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 865
  • +0/-0
  • 0
    • Просмотр профиля
    • http://gtp.hobi.ru
Попробуй так
SELECT SUBSTRING(name,0,1) AS letter,* from table where SUBSTRING(name,0,1) ="A"
Kiss my CSS
Pусские gtp gp3 ( midi + tab ) -   - Все для Авто.

Оффлайн fidget

  • Непоседа
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 607
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Цитировать
Дык LIKE медленный дюже, на сколькоя знаю

если проиндексируешь, то достаточно быстро :-)

кстати, если уже использовать substring, то тогда уже вот так

SELECT SUBSTRING(name,1,1) AS letter,* from table where SUBSTRING(name,1,1) ="A"

строка то ведь начинается с 1й позиции, а не с нулевой ;)
На Машине Тьюринга далеко не уедешь.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28