首页 新闻 搜索 专区 学院

Mysql 存储过程 查询 问题

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-02-05 16:20
SELECT gi.ID,gi.`Name`,
IF(rp.ResellerPrice = NULL,IF( pp.ProvincePrice=NULL,gi.Price,pp.ProvincePrice),rp.ResellerPrice) Price,
gi.Brief ,fa.path 
FROM goodsinfo gi
LEFT JOIN reprices rp on gi.ID=rp.GoodsInfoID
LEFT JOIN provinceprices pp on gi.ID= pp.GoodsInfoID

求助,问题描述:

查询的时候,先在reprices 表查有没有数据,

有就是reprices 表中的数据,如果没有数据则查询provinceprices  表中数据

有就是provinceprice表中数据, 没有才是goodsinfo表中数据。

弃用的主页 弃用 | 初学一级 | 园豆:185
提问于:2015-02-02 16:13
< >
分享
所有回答(2)
0

你就不能把这事在代码里面判断,非得累死MYSQL?

爱编程的大叔 | 园豆:30773 (高人七级) | 2015-02-02 16:18

呃,先告诉我累死mysql 的方法吧~

支持(0) 反对(0) 弃用 | 园豆:185 (初学一级) | 2015-02-02 16:21
0

你的问题描述里提到有就是xxx,没有就是yyy,这里不就涉及到逻辑判断了吗?先定义变量flag,然后先查询一条reprices数据,如果有则置flag为true,然后根据flag,进行IF ELSE判断,写两条SQL语句即可

JeffWong | 园豆:2028 (老鸟四级) | 2015-02-02 16:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册