我有一个数据库,其中包含基于等级定价的表格,具体取决于购买的数量示例:(1-10)是5美元,(11-15)是10美元,16是15美元,17-20是20美元
该表的结构如下:
数字int, cost int
表格的一个例子:
1 | 1
2 | 1
3 | 1
4 | 2
5 | 2
6 | 2
7 | 3
8 | 4
9 | 7
10 | 7
有没有办法让我编写一个查询,以便我可以以min,max和cost格式返回这些数字,例如在上面的示例中运行查询将返回:
MIN | MAX |成本
----- | ----- | ----
1 | 10 | 5
11 | 15 | 10个
16 | 16 | 15个
17 | 20 | 20
此外,我不确定这是否是这种表的最佳结构。任何和所有的帮助表示赞赏。谢谢!
答案 0 :(得分:0)
试试这个。它相当凌乱。刚尝试使用我的Server Management Studio。 更新:为了更好的可读性。
SELECT Mininum.Min, Maximum.Max, Mininum.Cost
FROM
(
SELECT MIN([Number]) as 'Min', Cost
FROM [TestDB].[dbo].[Testing]
GROUP BY Cost
) as [Mininum]
INNER JOIN
(
SELECT MAX([Number]) as 'Max', Cost
FROM [TestDB].[dbo].[Testing]
GROUP BY Cost
) as [Maximum]
ON Mininum.Cost = Maximum.Cost