Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / помогите составить запрос.. / 14 сообщений из 14, страница 1 из 1
11.10.2002, 13:32:32
    #32057483
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
Привет всем, помогите составить запрос.
примерно он выглядит так:
SELECT * FROM [qwerty] where ( (FirstName + ' ' + MiddleName + ' ' + LastName + ' ' + EducationHistory + ' ' + Skills + ' ' + ITKnowledge + ' ' + JobTitle + ' ' + JobGrafic + ' ' + Family + ' ' + ContactEmail + ' ' + ContactPhones + ' ' + ContactUrl + ' ' + Comments) Like '%xxx%' ) order by DateLastModified DESC

проблема в том, что в базе некотрые значения=NULL и за счет этого поиск в строке хотя бы с одним NULL не проходит (видимо при склеивании получается NULL)

Подскажите как справиться с такой гадостью..
...
Рейтинг: 0 / 0
11.10.2002, 13:33:47
    #32057484
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
isnull(FieldName, '')
...
Рейтинг: 0 / 0
11.10.2002, 13:38:18
    #32057485
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
а поподробнее нельзя?? плз..
...
Рейтинг: 0 / 0
11.10.2002, 13:42:04
    #32057486
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
BOL:
ISNULL
Replaces NULL with the specified replacement value.

Syntax
ISNULL ( check_expression , replacement_value )

В вашем случае, заменяете NULL на пустую строку '':

SELECT * FROM [qwerty] where ( (isnull(FirstName,'') + ' ' + isnull(MiddleName,'') + ....
...
Рейтинг: 0 / 0
11.10.2002, 13:43:54
    #32057487
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
еще вопрос на другую тему но по тому же запросу.
при сравнении по двум и более словам приходится повторять строку FirstName + ........ + ContactUrl + ' ' + Comments несколько раз, что очень сильно увеличивает длину запроса. как можно с этим справиться??
...
Рейтинг: 0 / 0
11.10.2002, 13:46:10
    #32057488
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
Опишите задачу, будет проще понять друг друга...
...
Рейтинг: 0 / 0
11.10.2002, 13:51:31
    #32057490
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
Это задача поиска в таблице по нескольким словам.
Фактически каждая ячейка строки должна проверяться на вхождение в нее запрашиваемого слова. я просто склеиваю все ячейки и проверяю ее.

при поиске по двум словам получается такой запрос:

SELECT * FROM [rmx_job_cv$] where ( (FirstName + ' ' + MiddleName + ' ' + LastName + ' ' + EducationHistory + ' ' + Skills + ' ' + ITKnowledge + ' ' + JobTitle + ' ' + JobGrafic + ' ' + Family + ' ' + ContactEmail + ' ' + ContactPhones + ' ' + ContactUrl + ' ' + Comments) Like '%1%' and (FirstName + ' ' + MiddleName + ' ' + LastName + ' ' + EducationHistory + ' ' + Skills + ' ' + ITKnowledge + ' ' + JobTitle + ' ' + JobGrafic + ' ' + Family + ' ' + ContactEmail + ' ' + ContactPhones + ' ' + ContactUrl + ' ' + Comments) Like '%2%' ) order by DateLastModified DESC

когда поиск проводится по большому количеству слов, в запросе приходится повторять склеивание много раз 8[
...
Рейтинг: 0 / 0
11.10.2002, 13:55:36
    #32057496
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
Напишите view который слеивает все поля в одно и соcтавляйте запрос на поиск с использованием этого view
...
Рейтинг: 0 / 0
11.10.2002, 13:59:01
    #32057499
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
а как это примерно должно выглядеть??
sorry за ламерские вопросы, но я токма начал работать с SQL.
если можно, поделитесь какойнть ссылочкой, где можно просвятиться в программинге SQL
...
Рейтинг: 0 / 0
11.10.2002, 14:05:56
    #32057503
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
Лучше BOL и sql.ru пока ничего не нашел :))
Полазьте по сайту, посмотрите документацию...
Есть sqlteam.com, но по английски.
...
Рейтинг: 0 / 0
11.10.2002, 14:08:14
    #32057506
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
хм, я неделю назад нашел этот сайт и уже неделю только и слышу BOL, BOL, BOL...
сей BOL имеет урл?? 8]
или это нечто гипотетическое?? 8]
...
Рейтинг: 0 / 0
11.10.2002, 14:10:26
    #32057508
Makc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
У Вас Enterpise Manager или Query Analazer стоит?
Вот когда Вы в них работаете нажимаете F1 вылезает BOL,
SQL Server Books Online
...
Рейтинг: 0 / 0
11.10.2002, 14:11:53
    #32057510
moonmike
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
BOL ето Book On Line её мона установить при установке MSSQLServer=)
...
Рейтинг: 0 / 0
11.10.2002, 14:12:32
    #32057511
Van
Van
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите составить запрос..
тьфу, блин.. слона то я и не приметил..

большое спасибо!!
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / помогите составить запрос.. / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]