Mysql查询 - 根据不同表中的列名获取行值

时间:2014-02-22 06:46:11

标签: mysql

我有2张桌子。一个用于库存,一个用于库存物品的信息。

信息表提供了更多关于网站的信息,我想将所有信息保存在一个表格中。

INVENTORY TABLE

UserID--ITEM1--ITEM2--ITEM3

key1--qty--qty--qty

key2--qty--qty--qty

表2结构“信息表”

  ItemClass  --   ItemID   --  Info

   CLASS1    --   ITEM1    --  "best item ever info"

   CLASS1    --   ITEM2    --   "worst item ever info"

   CLASS9    --   ITEM3    --  "some other item info"

如果qty高于0且CLASS1 <,我正试图获取一个查询来抓取ItemIDTable1key = $a中的列名匹配的行/ p>

生成此查询的任何帮助都可以节省生命。我不想重做我的库存架构。谢谢你的期待!

1 个答案:

答案 0 :(得分:0)

SELECT info.*
FROM info
JOIN Inventory ON (ItemID = 'ITEM1' AND ITEM1 > 0)
               OR (ItemID = 'ITEM2' AND ITEM2 > 0)
               OR (ItemID = 'ITEM3' AND ITEM3 > 0)
WHERE info.ItemClass = 'CLASS1'
AND Inventory.userID = $a