我试图在mysql数据库中连接两个表但是显示所有结果然后对匹配的那些说“联合结果”这样的单词 .
进一步解释一下,假设我有一个这样的表:
table name: 小时
id MORNING AFTERNOON EVENING
1 10.00 1.00 5.00
2 11.00 2.00 6.00
3 12.00 3.00 7.00
second table: 订单
id firstname timewanted
4 David 1.00
现在在我的页面上我想 JOIN
两个表但显示第一个表 hours 的所有结果并对结合中匹配的结果做了一些事情,在上面的例子中是 AFTERNOON
和 1.00
. (假设我需要回复像"this place is taken for that result"这样的消息) .
目前我正在使用此代码,但这不会显示所有结果:
$sql = "SELECT MORNING
FROM hours t1
WHERE t1.MORNING NOT IN (SELECT timewanted FROM orders)";
有人可以就此提出建议吗?
这将显示表1中的所有结果:
SELECT t1.MORNING, t2.timewanted FROM hours t1 LEFT JOIN orders t2 ON t1.MORNING=t2.timewanted;
但我仍然不知道如何用匹配的东西做点什么!
1 回答
您的
left join
查询中的AFTERNOON
列上的JOIN
就像是顺便说一句:你想用匹配的记录做什么?