我从大约900条记录的CSV文件中获取了一系列数据。我有一个查询,它根据数据库中的记录检查数组中的数据。该查询返回数据库中找到/匹配数组中数据的所有项
但是,我仍然希望数组中与数据库不匹配的记录包含在结果中,例如使用空值或类似的东西
我已经搜索过一个解决方案,但似乎没有什么能与我的情况相符
感谢任何帮助
SELECT U.address,
U.postcode,
M.member_id
FROM members M
LEFT JOIN ... On ...
WHERE
U.address LIKE :address
U.postcode = :postcode
... So on
使用pdo预备声明
答案 0 :(得分:0)
你可以使用union来完成它,第二部分是创建一个虚拟记录,它有一些东西可以从CSV中显示它,但是它有一个null member_id ......
SELECT U.address, U.postcode, M.member_id
FROM members M
LEFT JOIN ... On ...
UNION
SELECT *
FROM ( SELECT :address, :postcode, null ) as TEMP
WHERE NOT EXISTS ( SELECT 1
FROM members M1
LEFT JOIN ... On ...)
这不理想,一次处理记录可能更容易,并检查每个选择的记录数。