【问题标题】:checking single value in multiple tables and check response检查多个表中的单个值并检查响应
【发布时间】:2016-08-10 19:38:01
【问题描述】:

我有一个 mysql 表 mv4w_campaign_delivery_log 我将从那里得到 Subscriber_id 然后在其他三个表中检查它

mv4w_campaign_track_open
mv4w_campaign_track_unsubscribe
mv4w_campaign_track_url

如果上表中存在subscriber_id,则我收到true,否则为false....

例如
订阅者 ID 存在于 mv4w_campaign_track_open 表中,但不存在于其他两个表中,因此我将只接收 true ,而不是其他两个表,它们将以 false 响应..

我该如何为此编写查询?我很困惑学习加入和其他事情,但仍然很困惑,请帮忙。您可以在消息中询问表数据库架构,请帮助我

【问题讨论】:

    标签: mysql sql database join relational-database


    【解决方案1】:

    有很多方法,取决于您想要的格式是列还是行以及其他内容。但这里有一个示例,说明如何将左连接与 case 语句一起使用,以查看它们是否是日志表中的相关记录。以后在提问时向我们展示您的尝试!

    SELECT
        DISTINCT
        l.Subscriber_id
        ,CASE WHEN o.Subscriber_id IS NULL THEN 0 ELSE 1 END as ExistsInOpen
        ,CASE WHEN un.Subscriber_id IS NULL THEN 0 ELSE 1 END as ExistsInUnsubscrib
        ,CASE WHEN u.Subscriber_id IS NULL THEN 0 ELSE 1 END as ExistsInUrl
    FROM
        mv4w_campaign_delivery_log l
        LEFT JOIN mv4w_campaign_track_open o
        ON l.Subscriber_id = o.Subscriber_id
        LEFT JOIN mv4w_campaign_track_unsubscribe un
        ON l.Subscriber_id = un.Subscriber_id
        LEFT JOIN mv4w_campaign_track_url
        ON l.Subscriber_id = u.Subscriber_id
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多