我用MS SQL Server上的SQuirreL SQL工作,并使用合适的select
声明专栏中,我已经提取从表中的下列信息:MySQL不划分
date | case_type | case_model | click | view | display
YYYY-MM-DD | string_A | string_B | INT | INT | INT
其中click
,view
和display
有已经总结出来了,date
,case_type
和case_model
已经被分组了。
我想现在要做的就是总和click
和view
和鸿沟通过display
,通过date
,case_type
和case_model
分组。
要做到这一点,我首先做一个子选择下列方式:
select t1.date,
t1.case_type,
t1.case_model,
case when t1.date is not null
then (t1.click+t1.view)
else '0'
end as 'click_n_view',
t1.display
from my_original_table as t1
这将产生一个表所需的输出
date | case_type | case_model | click_n_view | display
YYYY-MM-DD | string_A | string_B | INT | INT
现在,所有我想做的是除以click_n_view
由display
。使用相同的逻辑之上,我做的另一个子选择:
select t2.date, t2.case_type, t2.case_model,
case when t2.date is not null
then (t2.click_n_view/t2.display)
else '0'
end as 'lead_rate'
from t1 as t2
然而,由于某些原因,输出保持不变,我仍然得到:
date | case_type | case_model | click_n_view | display
YYYY-MM-DD | string_A | string_B | INT | INT
有谁知道我怎么能让MySQL来计算最后的操作?
但是,您的查询是什么?现在我只看到分离的查询,而不是一些subquerys。 –
当两个操作数都是整数时,MySQL将返回一个整数。将其中至少一个或两者转换为十进制或浮点数(建议使用十进制)哦,顺便说一句,MySQL不是SQL Server。无论如何,这代表了两者。 – Pred
我不能相信这一点。你有一个别名为“lead_rate”的列,它只是不能返回名为“display”的列。另外你的帖子很混乱,你首先声明这是SQL服务器,最后你会看到MySQL –