SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.05.2008 12:52:44

viktorrrrrr
Участник
Зарегистрирован: 14.05.2008
Сообщений: 12

запрос

Как сделать такой запрос чтобы  из БД (num-id , ort ,n_ort)выбрались данные:  ort= пустo в строке  и ort не равeн n_ort одновременно.
для протокола ошибок

база приложена.

Неактивен

 

#2 14.05.2008 13:04:53

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 849

Re: запрос

WHERE ort='' AND ort != n_ort;

для верности даже лучше так:

WHERE (ort='' OR ort IS NULL) AND ort <=> n_ort;

(оператор <=> позволяет сравнивать значения с NULL)

база приложена.

Не понял. Что значит "приложена"?

Неактивен

 

#3 14.05.2008 13:20:42

viktorrrrrr
Участник
Зарегистрирован: 14.05.2008
Сообщений: 12

Re: запрос

извиняюсь не посмотрел обьем .
он выбрал только с пустыми строками (1)а с неравными нет(2,3,4)
_________________________
num_id | ORT      | N_ORT     |
-----------------------------------
1          |               |              |
2          |MOSKAU   | Moskau  |
3          |Moskauuu | Moskau  |
4          |               | Moskau  |

Отредактированно viktorrrrrr (14.05.2008 13:51:00)

Неактивен

 

#4 14.05.2008 18:20:44

LazY
_cмельчак
MySQL Authorized Developer and DBA
Зарегистрирован: 02.04.2007
Сообщений: 849

Re: запрос

Я Вас неправильно понял: я думал, должны выполняться оба условия одновременно:

ort= пустo в строке  и ort не равeн n_ort одновременно.

Если или с пустыми, или с неравными, то тогда так:
WHERE ort='' OR ort IS NULL OR ort != n_ort;

Учтите еще, что сравнение строк может проходить в различных режимах регистровой зависимости - скорее всего, у Вас это будет регистронезависимое сравнение, т.е. MOSCOW будет то же самое что moscow.
Если это критично, то нужно сначала понять, в какой кодировке у Вас данные хранятся (это можно сделать командой SHOW CREATE TABLE templates\G) и затем провести сравнение с регистрозависимым или двоичным сопоставлением.
Видимо, вышенаписанное не очень понятно - не стесняйтесь задавать вопросы.

Неактивен

 

#5 15.05.2008 10:40:29

viktorrrrrr
Участник
Зарегистрирован: 14.05.2008
Сообщений: 12

Re: запрос

Super ! Danke.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson