【发布时间】:2020-12-21 00:04:51
【问题描述】:
我正在尝试使用 SAS 中的 sql 语句根据另一列的条件创建一组新列。但是,使用我当前的代码,只要不满足条件,它就会显示为 Null 值。但我不希望用这些空白来构造新列。有人可以帮忙吗?在实际数据集中,我将几个表连接在一起。
这是一个简化的模拟数据集:
这里是使用的代码:
PROC SQL;
Create table Sales AS
SELECT
SUM (CASE WHEN Sub_Category in('Coffee')THEN Previous_Sales END)AS
Coffee_Sale,
SUM(CASE WHEN Sub_Category in('Tea')THEN Previous_Sales END)AS Tea_Sale,
SUM(CASE WHEN Sub_Category in('Soda')THEN Previous_Sales END)AS Soda_Sale
FROM data
GROUP BY Sub_Category;
我正在尝试采用这种格式:
此代码正在返回:
【问题讨论】:
-
为什么是 SQL?为什么不使用普通的 SAS 代码?