【发布时间】:2010-04-13 14:13:13
【问题描述】:
场景:
表 1
CatId|名称|描述
表 2
ItId|Title|Date|CatId(外键)
我想返回 Table1 中的所有行和 Table2 中的 Title,Date,其中 从表 2 返回的必须是按日期列的最新值。 (在第二个表中有许多具有相同 CatId 的项目,我只需要最新的)
我有 2 个查询,但无法将它们合并在一起:
Query 1:
SELECT Table1.Name, Table1.Description,
Table2.Title, Table2.Date
FROM
Table1 LEFT JOIN Table2 ON Table1.CatId=Table2.CatId
Query2:
SELECT TOP 1 Table2.Title, Table2.Date
FROM
Table2
WHERE
Table2.CatId = @inputParam
ORDER BY Table2.Date DESC
【问题讨论】:
-
你能试着更好地解释这个问题吗?我想你是说你想从 table1 和每一行返回每一行,以及 table2 中的 Title 和 Data 列,以获得 table2 中的最新(最新数据)行,其 CatID 与 table1 中的 CatID 匹配
-
@thecoshman ,是的,没错。 Table1 中的所有行以及 Title 和 Data 值都应该来自 table2 的最新记录(具有相同的 catid)
标签: sql sql-server-2005