SQL Server 2012删除双精度缓存的基本方法?

SQL Server 2012删除双精度缓存的基本方法?,sql,sql-server,Sql,Sql Server,我是SQL Server新手,这与学校有关 我只能使用SELECT、WHERE和ORDER BY命令 我有这个密码 Use Northwind SELECT DISTINCT ProductID, UnitPrice, Discount FROM [Order Details] WHERE Unitprice > 100 AND Discount != 0 通过使用distinct,不应该有双精度,但是我还是设法得到了这个 编辑:任务是要有唯一的product

我是SQL Server新手,这与学校有关

我只能使用SELECT、WHERE和ORDER BY命令

我有这个密码

Use Northwind

SELECT DISTINCT
    ProductID, UnitPrice, Discount
FROM 
    [Order Details]
WHERE
    Unitprice > 100 AND Discount != 0
通过使用distinct,不应该有双精度,但是我还是设法得到了这个

编辑:任务是要有唯一的productID,所以它基本上只剩下29和38。根据分配总共2行:S


这将允许您只获取唯一的ProductID

SELECT DISTINCT
ProductID
FROM 
[Order Details]
WHERE
Unitprice > 100 AND Discount != 0

如果您想展示一个简短的演示,可以使用SQLFiddle.com设置表和查询。我发现它总的来说比链接到图片要好。到底是什么问题?没有欺骗。结果集显示productid、价格和折扣的不同组合。您的问题是要删除重复项。您希望结果是什么样子?选择distinct将返回不同的记录组合。您可以通过选择较少的列来查看差异。如果你只选择不同的ProductID,你会得到2张唱片,29张和38张。哦,哇,没想到会那么容易,只是我太傻了。该作业共有1列,只是我之前作业的延续,可以用3列来解决。更清楚的是,我基本上遇到了死胡同,我想xD