我有两个表:具有N<->N关系的Place和Discount。我还有一个名为place_discount的表,它有两个外键(idPlace和idDiscount)。
当我把折扣加到一个地方时,例如酒吧的折扣,我就把它加在place_discount表中。
所以我的问题是:我有一个android应用程序,可以在数据库上查询。当我想列出所有我装载的地方时,我想向那些有折扣的人展示一位明星。列出我要做的select * from place。有办法做那个查询吗?
提示:我不能使用触发器,因为我没有超级特权。
发布于 2014-04-06 19:50:20
为什么不使用连接呢?
SELECT
Place.*,
IF(IFNULL(MIN(place_discount.idDiscount),0)>0,1,0) AS hasDiscount
FROM place
LEFT JOIN place_discount ON Place.id=place_discount.idPlace
GROUP BY Place.id如果有折扣,会给你一个1的hasDiscount,如果没有,则给你一个0。
附带说明:您不需要超级特权就可以在您拥有的表上设置触发器。
https://stackoverflow.com/questions/22899070
复制相似问题