我有以下SQL查询数据库,并从4个不同的表中提取信息。
SELECT d.item AS day, m.item as month, y.item as yr, l.item as local
FROM date_day d
JOIN date_month m ON d.recid=m.recid
JOIN date_year y ON d.recid=y.recid
JOIN location l ON d.recid=l.recid
WHERE d.recid='cneta0ld00s6'
这些表中的一个或多个可能为空并且不包含值。特别是在日期字段上。以上任何一项是否为空或不存在,会导致整个操作失败?我特别担心date_day,因为我知道mysql没有完整的加入。
有什么想法吗?
最佳答案
我觉得:
SELECT d.item AS day, m.item as month, y.item as yr, l.item as local
FROM date_day d
LEFT JOIN date_month m ON d.recid=m.recid
LEFT JOIN date_year y ON d.recid=y.recid
LEFT JOIN location l ON d.recid=l.recid
WHERE d.recid='cneta0ld00s6'
会做你想要的
关于mysql - PHP的MySQL加入4表可能的空值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12387152/