我有两个数据库,我正在尝试比较两个表。我的代码似乎不起作用,不确定我做错了什么。
这是代码。
<?php
include 'connection.php';
/*
* This code compares between two tables
*/
//SQL call
$getData = $connection->prepare("SELECT `CustomerCity` FROM `auth` LEFT JOIN `tb_data.cobs.city` WHERE `CustomerCity` = `tb_data.cobs.city` LIMIT 3");
$getData->execute();
$gotData = $getData->fetchAll(PDO::FETCH_ASSOC);
print_r($gotData);
在我的数据库中,我有两个表,on是cobs,另一个是tb_data。 tb_data有一个名为cobs的表,auth是一个名为d_data的数据库中的表。这两个表都有一个城市列。我需要获取auth中的每条记录,其中有一个匹配在cobs表中的城市。
答案 0 :(得分:0)
其他人指出您的查询错误,但未提供正确答案。这是你可能正在寻找的东西:
SELECT `auth.CustomerCity` FROM `auth`
LEFT JOIN `tb_data.cobs` ON `tb_data.cobs.city` = `auth.CustomerCity`
LIMIT 3
答案 1 :(得分:0)
看起来查询使用显式连接语法和过时语法的混合,使用连接条件的WHERE子句进行连接。
若是,请尝试: -
SELECT CustomerCity
FROM auth
LEFT JOIN tb_data.cobs
ON auth.CustomerCity = cobs.city
LIMIT 3
答案 2 :(得分:0)
试试这个:
在auth.city = cobs.city limit 3上从auth join cobs中选择* .auth,* .cobs
答案 3 :(得分:-1)
查询不正确,您需要指定表auth
和tb_data.cobs.city
之间的链接。例如:
SELECT
*
FROM
FOOTABLE FOO
LEFT JOIN
BARTABLE BAR ON BAR.FOO_ID FOO.ID = -- here goes the link between them
WHERE
...