首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从一个表中选择response为any的所有记录,并从response为no的其他表中选择record

从一个表中选择response为any的所有记录,并从response为no的其他表中选择record
EN

Stack Overflow用户
提问于 2020-07-16 13:41:48
回答 1查看 47关注 0票数 0

我正在使用下面的查询,但这不完整。

代码语言:javascript
运行
复制
select whatsapp_user_contact.*, whatsapp_task.is_intimation_sent, whatsapp_task.is_ots_sent, whatsapp_task.is_ndc_sent, whatsapp_task.ndc_media_template_date,
whatsapp_task.ots_media_template_date,whatsapp_task.intimation_media_template_date
FROM whatsapp_user_contact
left join whatsapp_task on whatsapp_user_contact.loan_account_no = whatsapp_task.loan_account_no
where whatsapp_user_contact.sms_timestamp like
'05/06/19%'
order by whatsapp_user_contact.recordid asc;

我有两张桌子。我想从一个表中选择response为yes、no或null的所有记录,但我不想从response为no的其他表中选择记录。

EN

回答 1

Stack Overflow用户

发布于 2020-07-16 14:40:49

看看这是否有帮助:

代码语言:javascript
运行
复制
select u.*, 
  t.is_intimation_sent, 
  t.is_ots_sent, 
  t.is_ndc_sent, 
  t.ndc_media_template_date,
  t.ots_media_template_date,
  t.intimation_media_template_date
FROM whatsapp_user_contact u 
     left join whatsapp_task t on u.loan_account_no = t.loan_account_no
where trunc(u.sms_timestamp) = date '2019-06-05'           --> dates aren't "like" anything
  and (u.response in ('yes', 'no') or u.response is null)  --> 1st table's responses
  and t.response <> 'no'                                   --> 2nd table's responses
order by u.recordid asc;

如果SMS_TIMESTAMP列的数据类型是DATE,则不要将其与字符串进行比较(因为'05/06/19%'是字符串,而不是日期),并且不要对其使用like。在本例中,我截断了它,这意味着将只使用日期组件;时间将被“移除”,设置为00:00:00

根据表的描述,如果sms_timestamp列上有索引,这可能不是最佳选择。这是可以修复的,没有问题;为了简单起见,我让它保持不变。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62928184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档