Dys*_*i_A 0 sql sql-in google-bigquery sql-like
我想隔离一些具有特定标题的电子邮件。我可以在 where 子句中使用与 OR 连接的多个“like”。这给了我一些结果。但是,如果我尝试在 ('____'、'____' 等) 中执行____,代码会突然返回任何内容。
这是行不通的。
select DATE_TRUNC(DATE(send_time,"America/Los_Angeles"), week(monday)) as week,
status,
settings_title,
sum(emails_sent) as emails_sent,
sum(report_summary_opens) as report_summary_opens,
sum(report_summary_unique_opens) as report_summary_unique_opens,
sum(report_summary_subscriber_clicks) as report_summary_subscriber_clicks
from mailchimp.campaigns_view
where status = 'sent'
and settings_title in ('%_LL_%', '%_IC_%', '%_AC_%', '%_CC_%', '%_PC_%')
group by 1,2,3
order by 1 desc
Run Code Online (Sandbox Code Playgroud)
然而,这确实有效。
select DATE_TRUNC(DATE(send_time,"America/Los_Angeles"), week(monday)) as week,
status,
settings_title,
sum(emails_sent) as emails_sent,
sum(report_summary_opens) as report_summary_opens,
sum(report_summary_unique_opens) as report_summary_unique_opens,
sum(report_summary_subscriber_clicks) as report_summary_subscriber_clicks
from mailchimp.campaigns_view
where status = 'sent'
and (settings_title like '%_LL_%'
or settings_title like '%_IC_%'
or settings_title like '%_AC_%'
or settings_title like '%_CC_%'
or settings_title like '%_PC_%')
group by 1,2,3
order by 1 desc
Run Code Online (Sandbox Code Playgroud)
我已经尝试在我的“from”中包含一个子查询,以消除所有空的settings_title。有什么想法为什么这不起作用吗?我是否遗漏了一些小语法错误?
谢谢您的帮助!
该%符号仅适用于LIKE. 因为IN这只是平等。也试试REGEXP_CONTAINS吧。
如:
SELECT REGEXP_CONTAINS("abcdefg", '(xxx|zzz|yyy|cd)')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9911 次 |
| 最近记录: |