我有一个(漂亮的)mysql表,如下所示:
Fields Datas
id (pk) 1 2 3 4 5 6
master_id 1000 1000 1000 2000 2000 2000 ...
master_name home home home shop shop shop ...
type_data value common client value common client ...
param_a foo_a 1 0 bar_a 0 1 ...
param_b foo_b 1 0 bar_b 1 0 ...
param_c foo_c 0 1 bar_c 0 1 ...
... ... ... ... ... ... ... ...
所有这些数据都嵌入在一个表中。每个数据都在3个“列”集上调度(1表示值,1表示识别这些是否为常用值,1表示用于识别客户端值)。这不是我得到的最好的,但许多其他脚本依赖于这种结构。
我需要这样的东西:
SELECT parameters name (eg param_a, param_b..) and their values (eg foo_a, foo_b..)
WHEN master_id=? AND type_data=(common or client) (eg for values=1 on the 2nd column)
。
以获取特定master_id的参数哈希,如
param_a => foo_a
param_b => foo_b
param_c => foo_c
...
到目前为止,我无法在同一张桌子上自我加入,但我想这应该是可行的。 (我想避免做几个查询)
提前谢谢
答案 0 :(得分:0)