我们假设您有2张桌子。
Table 1 - T
Columns
City ID(Foreign keyed to C.cityid)
Completed (yes or no)
NumberOne (integer)
NumberTwo (integer)
Date (timestamp with timezone)
Table 2 - C
City ID (integer)
City Name (string)
对于每个城市' A'和' B'如何计算过去30天内所有已完成事物的NumberOne和NumberTwo之间的第90个百分点差异。
这是我到目前为止所拥有的:
SELECT
100.0*(T.NumberOne - T.NumberTwo) / T.NumberTwo As PercentDiff
FROM T
JOIN C ON CityID
我是SQL的新手,不知道如何为所有这些创建一个查询。我需要使用子查询吗?
答案 0 :(得分:1)
尝试这样的事情:
SELECT
100.0*(t.NumberOne - t.NumberTwo) / t.NumberTwo As PercentDiff
from T t
inner join C c
on t.[City ID] = c.[City ID]
where c.Name in ('A','B')
and t.Completed = 'yes'
and t.Date > DATEADD(day, -30, GETDATE())
答案 1 :(得分:0)
尝试ON CITYID = CITYID
in语句需要一个布尔表达式。