存在的SQL返回空

时间:2018-03-27 08:39:10

标签: php mysql sql

我试图在我的数据库中加载所有可用的运算符。可用的含义它们目前已完成,无论它们被分配了什么工作,都可用于新的作业。

我正在查询运算符和作业表,然后加入users表以获取其详细信息,但我一直得到一个空结果。 这是我的代码

$sql1 = "SELECT * from operator
 WHERE EXISTS (
      SELECT * FROM job
      WHERE
      job.OperatorId = operator.OperatorId 
        AND job.Status == 'Completed') 
 INNER JOIN users ON  operator.UserId = users.UserId";
$result1 = $conn->query($sql1);
print_r($result1);

运营商表

Operator Table

工作表

Job Table

请告知我做错了什么

1 个答案:

答案 0 :(得分:1)

在mysql中,查询需要像这样写:

SELECT [...]
FROM [...]
JOIN [...]
WHERE[...]

然后:

SELECT * from operator
INNER JOIN users ON  operator.UserId = users.UserId
 WHERE EXISTS (
      SELECT * FROM job
      WHERE
      job.OperatorId = operator.OperatorId 
        AND job.Status == 'Completed') 

应该有效。