-2

我有两张桌子:

tbl_car_detail
--------------
CarID (primary key)
CarBrand

tbl_car_image
-------------
ImageID (primary key)
CarID (foreign key)
Image

我已将以下记录插入tbl_car_detail

CarID                CarBrand
-----------------------------
1                    Audi
2                    bwm

我正在插入多个相同的图像,CarID如下tbl_car_Image所示:

ImageID                  CarID             Image
------------------------------------------------
1                        1                 Image1
2                        1                 Image2
3                        1                 Image3
4                        2                 Image4
5                        2                 Image5

我想在两个表的一个结果集中显示结果。我正在使用这个查询:

SELECT     dbo.Tbl_Car_detail.CarID,dbo.tbl_mst_CarDetail.CarBrand , tbl_car_Image.Image
FROM         dbo.Tbl_Car_detail.CarID RIGHT OUTER JOIN
                      tbl_car_Image.Image ON dbo.Tbl_Car_detail.CarID = dbo.tbl_car_Image.CarID

结果如下:

CarID               CarBrand                Image
--------------------------------------------------
1                   Audi                    Image1
1                   Audi                    Image2
1                   Audi                    Image3
2                   Bmw                     Image4
2                   Bmw                     Image5

但是,我只想要一张像这样的每个 CarID 结果的图像

CarID               CarBrand                Image
--------------------------------------------------
1                   Audi                    Image1
2                   Bmw                     Image4
4

1 回答 1

0

所以你只想要每个 CarID 的第一张图片?这将做到这一点...

SELECT dbo.Tbl_Car_detail.CarID,dbo.tbl_mst_CarDetail.CarBrand,(SELECT TOP 1 tbl_car_Image.Image FROM tbl_car_Image.Image WHERE dbo.Tbl_Car_detail.CarID=dbo.tbl_car_Image.CarID) AS Image FROM dbo.Tbl_Car_detail.CarID
于 2012-10-10T21:37:21.640 回答