我正在尝试在我的新Webmatrix网站上做一些事情,我不确定它是否可行。
我的数据库中有以下2个表。
属性 物业ID, 属性名, Primary_Image
图片 物业ID, IMAGEURL, 图像标识
我为每个属性设置了一个页面,其中显示了属于该属性的所有图像。问题是,我想订购这些图像,以便主图像显示在顶部?我怎样才能做到这一点?
这是我当前的SQL查询:
var images = db.query("SELECT * FROM Images JOIN Property ON Images.ImageID=Property.Primary_Image WHERE PropertyID = @0"), PropertyID;
答案 0 :(得分:3)
尝试:
var images = db.query(@"SELECT t1.* FROM Images t1 LEFT JOIN Property t2 ON
t1.ImageID = t2.Primary_Image WHERE t1.PropertyID = @0 ORDER BY
t2.Primary_Image DESC", PropertyID);
使用此查询,您可以过滤Images
来自PropertyID
匹配行的Property
加入的记录。
由于只有主映像在Property
中有匹配的行,因此该记录是唯一具有Primary_Image
值的记录:按降序排序会将此记录放在第一位。