我正在为我的模型获取一些行,但是视图有很多标准,我已经厌倦了编写许多模型。为了使工作更轻松,我不想为每个选择的标准编写新的选择语句,所以起初我尝试尝试即使用户提供/未提供多个可用条件之一,仍会从选择中返回某些内容。
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
并因此失败。
有人帮忙。