Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 连接表并显示所有结果?_Php_Mysql - Fatal编程技术网

Php 连接表并显示所有结果?

Php 连接表并显示所有结果?,php,mysql,Php,Mysql,我试图连接mysql数据库中的两个表,但显示所有结果,然后对匹配的表使用类似“joined result”的词 为了进一步解释这一点,假设我有这样一张表: 表名:小时 第二张表:订单 现在在我的页面上,我想加入两个表,但显示第一个表的所有结果hours,并对加入中匹配的结果执行一些操作,在上面的示例中是午后和1.00。(假设我需要回应这样的信息:“这个地方就是为了那个结果而被占领的”) 目前我正在使用此代码,但不会显示所有结果: $sql = "SELECT MORNING FROM hour

我试图连接mysql数据库中的两个表,但显示所有结果,然后对匹配的表使用类似“joined result”的词

为了进一步解释这一点,假设我有这样一张表:

表名:小时

第二张表:订单

现在在我的页面上,我想
加入两个表,但显示第一个表的所有结果hours,并对加入中匹配的结果执行一些操作,在上面的示例中是
午后
1.00
。(假设我需要回应这样的信息:“这个地方就是为了那个结果而被占领的”)

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

$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;

但我仍然不知道如何处理匹配的那个

您打算在
左侧的
查询中的
下午
列中加入

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;
顺便问一下:你想对匹配的记录做什么

如何使用匹配的


不。你似乎只是复制了我自己的代码,把早上改成了下午!lolI不需要复制,只需更改已加入的列,因为如果您在早晨的列中加入,您将不会获得任何匹配的记录。如果这不是你想要的,那么我不介意删除我的答案。假设我得到了所有的结果(匹配的和不匹配的)。。。现在,我想对匹配的词或东西进行回应。我希望现在更清楚了。你检查过编辑过的答案了吗?试试这个查询,希望这就是你要找的。看起来它应该能满足我的需要,但不幸的是它什么也做不了。它获取所有结果,但不回显匹配结果的“连接结果”。
SELECT t1.MORNING, t2.timewanted FROM hours t1 LEFT JOIN orders t2 ON t1.MORNING=t2.timewanted;
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;