伊夫目前有以下问题:SQL左连接中选择第一个表一次
我有一个MySQL查询:
SELECT account.id as id, `cname`, `username`, `state`, `dow`
FROM account
LEFT JOIN zeitplanung
ON account.id = zeitplanung.user_id
WHERE account.hide = 0
and ifnull(zeitplanung.kw,43) = 43
and ifnull(zeitplanung.year, 2017) = 2017;
它返回的用户名,并为他们提到的值,万一我”已经选择了正确的年份和千位,并且如果连接表中没有条目,它将返回表格帐户中的值以及所有其他值,如NULL
。
但是它不返回用户名,以防万一表“zeitplanung”中没有满足cafeterias(kw,year)的条目。
如何做我必须编写查询:
- 得到第二张表中所有条目的情况下匹配项存在
- 获得的情况下,用户名和第二表项为NULL的WHERE语句赢得”不适合。
我使用的是默认的MySQL服务器,但据我所知,这样的默认querys应bouth –
样本数据运行和预期结果对于一个有意义的答案会很有用, –
http://i.epvpimg.com/6Qnfbab.png多数民众赞成在表的屏幕。 例如kw = 40在上面的查询中我会预期: http://i.epvpimg.com/0BmQdab.png和kw = 41的情况下我会除了bouth id | s,用户名,cnames,但是其余的数据为NULL –