【发布时间】:2018-03-23 10:08:51
【问题描述】:
我有一个包含一个月数据的表
SELECT
CASE WHEN (m1.is_internal = 1 AND m2.is_internal = 1) THEN
SUM(CAST([size] AS BIGINT)) END AS internal_volume,
CASE WHEN (m1.is_internal = 0 AND m2.is_internal = 1) THEN
SUM(CAST([size] AS BIGINT)) END AS external_volume_in
FROM
messagesgal msg
LEFT JOIN
messages_addresses m1
ΟΝ msg.originator = m1.address
LEFT JOIN
messages_addresses m2
ΟΝ msg.recipient = m2.address
WHERE
date >= 43179
GROUP BY
floor(date), m1.is_internal, m2.is_internal
这个查询给了我以下结果:
我想在此选择中排除 NULL 值的出现。 如果我只想获得这些大整数,为什么它会给我 NULL 值以及如何实现这一点?
【问题讨论】:
-
也许如果你在选择语句中添加
date你会得到答案 -
请分享一些示例数据和预期输出
-
将
internal_volume IS NOT NULL AND external_volume_in IS NOT NULL添加到您的WHERE中?预期结果尚不清楚。 -
floor(date)?这是什么意思?
标签: sql sql-server tsql select null