SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 04.05.2010 13:49:04

kuzroman
Завсегдатай
Зарегистрирован: 28.04.2010
Сообщений: 37

true and false

Объясните, может я что не понимаю.
Есть два запроса:
1)$result = mysql_query("SELECT * FROM obiekt WHERE vipolnen=false and cat_men2=false ORDER BY id DESC  ",$db);

2)$result = mysql_query("SELECT * FROM obiekt WHERE vipolnen=false and cat_men2=true  ORDER BY id DESC  ",$db);

только первый работает, а второй нет.
В базе есть значения cat_men2 как заполненные, так и пустые. Но один фиг первое работает, а второе условие нет.
У меня синтаксис верный?

Неактивен

 

#2 04.05.2010 14:44:14

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: true and false

А что значит «работает» и «не работает»?

Неактивен

 

#3 04.05.2010 22:44:58

kuzroman
Завсегдатай
Зарегистрирован: 28.04.2010
Сообщений: 37

Re: true and false

Значит что в первом случае данные выыодятся, а во втором нет, причем даже ошибку не выдает. Вот я и думаю толи запрос неверный то ли цикл в php где то написал неверно. Вы скажите главное mysql true и false глотает нормально у меня в запросе косяков нет??? Я вот раньше вместо and писал & . так sql то принимал, то ошибку выдавал.

Неактивен

 

#4 05.05.2010 00:32:37

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: true and false

Ну, значит, у Вас просто нет соответствующих данных.

Глотает нормально:

mysql> select true, false;
+------+-------+
| TRUE | FALSE |
+------+-------+
|    1 |     0 |
+------+-------+
1 row in set (0.00 sec)

Неактивен

 

#5 05.05.2010 09:15:23

kuzroman
Завсегдатай
Зарегистрирован: 28.04.2010
Сообщений: 37

Re: true and false

Я правильно понимаю:
fale - когда перепенных нет вообще.
true - когда есть какие либо данные в ячейке?

Неактивен

 

#6 05.05.2010 09:25:59

kuzroman
Завсегдатай
Зарегистрирован: 28.04.2010
Сообщений: 37

Re: true and false

Решил проблему заменив
cat_men2=true на cat_men2>0
Благо там цифровые значения. А что делать если там текст. Будет работать или нет?
Вообще посоветуйте хороший мануал или лучше учебник по mysql на русском и лучше чтоб с нуля изучать.
Спасибо.)

Неактивен

 

#7 05.05.2010 14:03:42

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: true and false

true — это 1. false — это 0.
Мануал — dev.mysql.com. Учебник — ищите книжки автора Paul Dubois.

Неактивен

 

Board footer

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