Я извлекаю несколько строк для своей модели, но в представлении так много критериев, я устал писать много моделей. Чтобы облегчить работу, я не хочу для записи новых операторов выбора для каждого выбранного критерия, поэтому сначала я попытался попробовать и все еще вернуть что-то из выбора, даже когда один из других доступных критериев не предоставляется/не предоставляется пользователем.Почему column_name = (select column_name) работает, а не column_name = null
SELECT * FROM members WHERE member_id = null AND member_club_id = 1 AND membership_year = null;
и ничего не возвращает
Наконец я попытался
SELECT * FROM members WHERE member_id = (select member_id) AND member_club_id = (select member_club_id=1) AND membership_year = (select membership_year);
и это работает правильно.
Я все еще новичок в mysql, и я хотел знать, почему этот второй подход работал.
Интересует, например, select member_club_id=1
и member_id = (select member_id)
.
В member_id = (select member_id)
Я думал, что это будет считаться member_id=member_id
, так как у меня не было переменной, называемой member id
, и поэтому не удалось.
В select member_club_id=1
Я думал, что получил бы unknown column
ошибки в member_club_id
и, следовательно, не смог.
Кто-то помогает.
Это должно быть 'IS NULL' вместо' = NULL' –