首页 文章

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

提问于
浏览
0

我试图在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 的所有结果并对结合中匹配的结果做了一些事情,在上面的例子中是 AFTERNOON1.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 回答

  • 1

    您的 left join 查询中的 AFTERNOON 列上的 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;
    

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

    如何用匹配的东西做点什么

相关问题