gpt4 book ai didi

SQL Group by "Like"

转载 作者:行者123 更新时间:2023-12-03 14:03:32 25 4
gpt4 key购买 nike

我有一个查询,我在哪里生成我们每月的客户联系事件。我们有几个类别(发送电子邮件、发送电子邮件、拨入电话、拨出电话等)。有 8 种不同的“类型”结果。我需要有两组——一组用于所有“电子邮件”,一组用于所有“电话”。目前,我有一个 WHERE TYPE LIKE '%Email%' 和 TYPE LIKE '%Call%'。但是,我无法按这两个“LIKE”语句进行分组。有谁知道我怎样才能最好地做到这一点?

例如,我将查询简化为:

SELECT     TYPE
FROM dbo.HISTORY
WHERE (TYPE LIKE '%email%') OR
(TYPE LIKE '%call%')

最佳答案

这应该有效:

SELECT
TYPE
FROM
dbo.HISTORY
WHERE
(TYPE LIKE '%email%') OR (TYPE LIKE '%call%')
GROUP BY
CASE
WHEN type LIKE '%email%' THEN 'email'
WHEN type LIKE '%call%' THEN 'call'
ELSE NULL
END

虽然,我的建议是有一个类型代码表,其中包含另一列,说明每种类型是否被视为电子邮件或电话。然后,您就不必依赖特定格式的类型名称,这种格式肯定会被遗忘。然后,您可以轻松地对此进行分组:
SELECT
H.type
FROM
dbo.History
INNER JOIN dbo.History_Types HT ON
HT.history_type_code = H.history_type_code AND
HT.history_type_category IN ('Email', 'Call')
GROUP BY
HT.history_type_category

关于SQL Group by "Like",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6101404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com