0

我有两张桌子

table1:itemTbale
table2:itemDetails


itemTable contain
id | itemName

itemDetails
id | itemID | price | details

表可能包含这样的数据

  id | itemName
   1    Vechile
   2    Fruits


id | itemID | price | details
1      1      80$     bla bla
2      1      150$    bla bla bla
3      1      200$    bla bla
4      2       5$      ..
5      2       8$     ..bla
6      2       7$      bla..

现在我必须为每个 itemID 选择最重要的项目详细信息

喜欢

 id | itemID | price | details  |itemName
 1     1       80$      bla bla   Vechile
 4     2        5$      ..        Fruits.

我对查询有点困惑。帮助我提前谢谢你。

4

1 回答 1

2
;WITH MyCTE AS
(
    SELECT D.id,
           D.itemID,
           D.price,
           D.details,
           T.itemName,
           ROW_NUMBER() OVER(PARTITION BY D.itemID ORDER BY D.id) AS row_num
    FROM   itemTable T
           JOIN itemDetails D
               ON T.id = D.itemId
)

SELECT id,
       itemID,
       price,
       details,
       itemName
FROM   MyCTE
WHERE  row_num = 1

看看这个小提琴

于 2013-09-11T07:12:42.253 回答