0

我有两张桌子,optionvalues& valprice

我在两个表中都有相同的opt_idprod_id 。

optionvalues

id opt_id item_id  value   value_img
 1    1       5     Big       img1
 2    1       6     Small     img1

valprice

price_id    price_dir          price    prod_id        val_id   item_id
  1                +             10        1               1       7
  2                -             5         1               2       7

我的查询:

SELECT  op.value, vp.price_dir, vp.prod_id, vp.price, vp.val_id
from optionvalues op, valprice vp
where op.opt_id=1 and vp.prod_id=1

输出:

大+10
大-5
小+10
小-5

而我想要这个

大+10
小-5
4

2 回答 2

1

您需要告诉 MySQL 应该如何连接表:

SELECT op.value, vp.price_dir, vp.prod_id, vp.price, vp.val_id
FROM   optionvalues op JOIN valprice vp ON vp.val_id = op.id
WHERE  op.opt_id=1 AND vp.prod_id=1

阅读本教程以获取有关 SQL 连接的更多信息。

于 2012-05-10T06:00:43.993 回答
0

查询应该是

SELECT  op.value, vp.price_dir, vp.prod_id, vp.price, vp.val_id
 from optionvalues op, valprice vp
 where op.opt_id=vp.prod_id and op.opt_id=1
于 2012-05-10T06:00:32.923 回答