连接表并显示php mysql的所有结果?

时间:2014-07-12 00:20:30

标签: php mysql

我正在尝试在mysql数据库中连接两个表但是显示所有结果然后说出一个像"加入结果"对于那些匹配的。

进一步解释一下,假设我有一个这样的表:

表名: 小时

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

第二个表: 订单

id  firstname  timewanted

4    David      1.00     

现在在我的页面上我想要JOIN两个表,但显示第一个表小时的所有结果,并对示例中的连接中匹配的结果执行某些操作上面是AFTERNOON1.00(假设我需要回复像&#34这样的消息;这个地方是为了这个结果")

目前我正在使用此代码,但这不会显示所有结果:

$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 个答案:

答案 0 :(得分:1)

您的JOIN查询中的AFTERNOON列上的left join意味着

SELECT t1.MORNING, 
t2.timewanted,
CASE WHEN t2.timewanted IS NOT NULL THEN 'joined result' END AS Extra_Column
FROM hours t1 
LEFT JOIN orders t2 
ON t1.AFTERNOON=t2.timewanted;

顺便说一句:你想用匹配的记录做什么?

  

如何使用匹配的

做某事