按id字段加入SQL表

时间:2014-11-27 00:25:49

标签: php sql join

我在mysql数据库上有以下sql查询,它返回wp_client的所有结果,其中form_id为46,date_created在过去7天内...

SELECT *
FROM
    wp_client WHERE form_id = '46'
and
    cast(date_created as date) >= current_date - interval '7' day

我有另一个表wp_client_detail,它存储了我希望包含在结果中的更多信息。 wp_client_detail中的字段client_id与wp_client中的字段ID匹配。

我假设我需要使用JOIN命令,但无法解决问题,我试过......

    INNER JOIN
            wp_client_detail
        ON
            wp_client.id=wp_CLIENT_detail.lead_id;

但它没有用,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

您的语法没有错,只要确保按正确顺序完成所有操作:

SELECT *
FROM
    wp_client 
    INNER JOIN wp_client_detail ON
            wp_client.id=wp_CLIENT_detail.lead_id
WHERE form_id = '46'
and  cast(date_created as date) >= current_date - interval '7' day;

如果该语法不起作用,那么我建议你的数据有问题。

也可以使用IN

进行渲染
select
  *
from
  wp_client c
where
  form_id = '46'
  and cast(date_created as date) >= current_date - interval '7' day
  id in (select lead_id from wp_CLIENT_detail)

EXISTS

select
  *
from
  wp_client c
where
  form_id = '46'
  and cast(date_created as date) >= current_date - interval '7' day
  id exists (select 1 from wp_CLIENT_detail d where c.id = d.lead_id)