C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Запрос, SQL запрос
noname
Отправлено: 18.08.2004, 13:53


Не зарегистрирован







Большая база данных. Имеютя ФИО, телефон и т.д. Хотелось бы узнать, как выглядит запрос на то, чтобы показывались ФИО, начинающиеся с буквы "П"?
Gedeon
Отправлено: 18.08.2004, 15:40


Ветеран

Группа: Модератор
Сообщений: 1742



Во первых какая БД?
Вот для SQL Server
SQL
SELECT * -- или что вам надо
FROM YourTable WHERE YourTable.Name LIKE 'П%'

В принципе для других серверов БД практически так же. М.б. небольшие различия в синтаксисе.

Отредактировано Gedeon — 18/08/2004, 16:45
noname
Отправлено: 18.08.2004, 19:08


Не зарегистрирован







Спасибо за инфу!Попробовал, все путем!
olegenty
Отправлено: 19.08.2004, 09:28


Ветеран

Группа: Модератор
Сообщений: 2412



не помню, как в MSSQL, а Interbase не использует индекса по полю, если используется оператор LIKE. (потому что не знает, из какой части строки будет выборка подстроки-условия). Поэтому, если заренее известно, что условие касается именно НАЧАЛА СТРОКИ, а не маски, то целесообразнее использовать STARTING WITH 'П' вместо LIKE 'П%' — в этом случае будет использоваться индекс, если он есть.
Gedeon
Отправлено: 19.08.2004, 12:19


Ветеран

Группа: Модератор
Сообщений: 1742



В MSSQL то же самое, LIKE использовать нехорошо, но в принципе иногда не обойтись, все зависит от конкретной ситуации.

Вернуться в Работа с базами данных в C++Builder