Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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
Mysql 使用左联接从多个表中选择_Mysql - Fatal编程技术网

Mysql 使用左联接从多个表中选择

Mysql 使用左联接从多个表中选择,mysql,Mysql,我有三张桌子 t1 (select these records) ------------- id offer_id business_id t2 (offer details) ------------- id offer_details business_id t3 (business details) ------------- id business_name 我需要从t1中选择所有记录,并从t2和t3中添加信息。似乎是基本的,但我似乎不能得到它的权利-必须是热 SELECT t

我有三张桌子

t1 (select these records)
-------------
id
offer_id
business_id

t2 (offer details)
-------------
id
offer_details
business_id


t3 (business details)
-------------
id
business_name
我需要从t1中选择所有记录,并从t2和t3中添加信息。似乎是基本的,但我似乎不能得到它的权利-必须是热

SELECT t2.offer_details, t3.business_name
FROM t2
LEFT JOIN t1 ON (t1.offer_id = t2.id)
LEFT JOIN t3 ON (t1.business_id = t3.id)
这个怎么样

Select t2.offer_details, t3.business_name
From t1
Left Join t2 ON (t1.offer_id = t2.id)
Left Join t3 ON (t1.business_id = t3.id)
这个怎么样

Select t2.offer_details, t3.business_name
From t1
Left Join t2 ON (t1.offer_id = t2.id)
Left Join t3 ON (t1.business_id = t3.id)
应该是

 SELECT t2.offer_details, t3.business_name
 FROM t1
 LEFT JOIN t1 ON (t1.offer_id = t2.id)
 LEFT JOIN t3 ON (t1.business_id = t3.id)
您的潜在客户表是t1,连接应基于此表

 SELECT t2.offer_details, t3.business_name
 FROM t1
 LEFT JOIN t1 ON (t1.offer_id = t2.id)
 LEFT JOIN t3 ON (t1.business_id = t3.id)

您的lead表是t1,连接应该基于此表

如果您想要t1中的所有记录,请在所选零件上添加t1.*。假设t1中的所有ID都存在于其他两个表中

SELECT
    t1.*, t2.offer_details, t3.business_name
FROM
    t1
    JOIN t2 ON t2.id = t1.offer_id
    JOIN t3 ON t3.id = t1.business_id

如果t1中的ID在t2或t3中可能丢失,请修改为左联接。

如果您想要t1中的所有记录,请在所选零件上添加t1.*。假设t1中的所有ID都存在于其他两个表中

SELECT
    t1.*, t2.offer_details, t3.business_name
FROM
    t1
    JOIN t2 ON t2.id = t1.offer_id
    JOIN t3 ON t3.id = t1.business_id

如果t1中的ID在t2或t3中可能丢失,请修改为左连接。

似乎正确。。。展示一个合适的样本为什么你认为这是错误的?我得到的结果来自于那些不在t1中的企业。。。并且多次重复相同的优惠。您将获得由于左键连接而不在t1中的业务。更改为加入,则在t1中只能获得业务。还可以将查询中的主表从t2更改为t1。似乎正确。。。展示一个合适的样本为什么你认为这是错误的?我得到的结果来自于那些不在t1中的企业。。。并且多次重复相同的优惠。您将获得由于左键连接而不在t1中的业务。更改为加入,则在t1中只能获得业务。另外,将查询中的主表从t2更改为t1。t1只包含其他表中记录的ID。然后删除t1。*。您应该获得t1上列出的所有报价ID和业务ID。t1只包含其他表中记录的ID。然后删除t1。*。您应该获得t1上列出的所有报价ID和业务ID。