Запрос не приводит к правильным записям - PullRequest
1 голос
/ 16 апреля 2011

У меня есть этот запрос:

SELECT id, name FROM users
WHERE ((id = 1) OR (5 <= 5))

Это должно привести ко всем записям как 5 = 5, но это не так.Это только записи, где идентификатор = 1.

Что я делаю не так?

РЕДАКТИРОВАТЬ: Это полный запрос:

SELECT project_id, project_name, project_description, project_active, 
            users.user_firstname, users.user_lastname FROM projects 
            INNER JOIN users ON projects.user_id = users.user_id 
            WHERE (projects.user_id = 1 || 3 <= 3)

РЕДАКТИРОВАТЬ: Найдено это =/ Что-то не так с соединением;user_id по какой-то причине больше не существует.

Ответы [ 3 ]

0 голосов
/ 16 апреля 2011

Сделай это

$q = ("SELECT id, name FROM users WHERE id = 1 || 5 <= 5");

Вот как я это делаю.

0 голосов
/ 16 апреля 2011

Попробуйте:

EXPLAIN EXTENDED SELECT id, name FROM users where id=1 or 5<=5;

SHOW WARNINGS;

вы обнаружите, что MySQL выполняет запрос:

SELECT id,name FROM users where 1

означает, что (id = 1 или 5 <= 5) совпадает с 1 </p>

0 голосов
/ 16 апреля 2011

Итак, хотите ли вы, чтобы все записи были меньше или равны 5?

если так, то только его

SELECT id, name FROM users
WHERE id <= 5

Кроме этого

(5 <= 5)

"5" - это строка таблицы как id?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...