我有一对 SQL 服务器表。
P 包含 id 和 name。PR 包含 id、interestrate、tiernumber、fromdate、todate 和 P.id。PR 可能包含每个 p.id / tier 列出的许多行。(等级是产品在任何给定日期期间可能具有的费率列表。)
例如:产品 1 层 1 从 2008 年 1 月 1 日到 2009 年 1 月 1 日开始,有 6 个费率,每个费率显示 1 行。产品 1 层 2 开始于 2009 年 1 月 2 日等等等等
我需要一个显示 P.name 和 PR.tiernumber 和日期的视图......但我只想要一行来代表层。
这很简单:
SELECT DISTINCT P.ID, P.PRODUCTCODE, P.PRODUCTNAME, PR.TIERNO,
PR.FROMDATE, PR.TODATE, PR.PRODUCTID
FROM dbo.PRODUCTRATE AS PR INNER JOIN dbo.PRODUCT AS P
ON P.ID = PR.PRODUCTID
ORDER BY P.ID DESC
这给了我正确的数据......但是:这不允许我看到 PR.ID,因为这会否定不同的。
我需要限制结果集,因为用户只需要查看层列表,我需要查看显示所有数据的 PR.ID。
有任何想法吗?