我的公司使用sql server数据库。
如果某个单元格区域等于这些值中的任何一个值,是否可以在sql查询中使用该区域作为条件?它甚至可以在同一行上使用日期范围吗?
参考示例:
数据示例:
所需输出:
问题1:我可以引用整个专栏吗?
SELECT ID, sum(units) FROM sales WHERE ID = any ID in Column A
问题2:我可以只指定一个单元格范围吗?
SELECT ID, sum(units) FROM table WHERE ID = any value in A2:A10
问题3:我是否可以添加一个日期范围单元格引用,使同一个id可能出现多次,但具有不同的日期范围(请参见示例中的747375),并分别返回两个范围的结果?
SELECT ID, sum(units) FROM table WHERE ID = any value in A2:A10 AND DATE >= date found in column B that is next to ID in the same row AND DATE <= date found in column C that is next to ID in the same row
2条答案
按热度按时间km0tfn4u1#
你可以用
between
如下所示nuypyhwy2#
问题1:我可以引用整个专栏吗?
对。违约
select
没有一个where
子句将引用整个列。你的榜样
SELECT ID, sum(units) FROM sales WHERE ID = any ID in Column A
逻辑上不合理。从select
,我假定您需要每个id的单位之和,而不是不考虑id的所有单位之和。为此,您要使用group by
```select ID, sum(units) totalunits
from sales
group by ID
select ID, sum(units) totalunits
from sales
where ID in (select top(9) ID
from sales
order by date
)
group by ID