我正在使用两张桌子。第一个表称为temp6,列标记为bsite,bsector,msite,msector,esite,esector,bpn,epn。第二个表称为homdatapairs,其列标记为fromcell,fromsector,tocell,tosector,hocount,percentage。
目标是生成一个由bsite,bsector,msite,msector,hocount和percentage组成的表。我遇到的问题是,在homdatapairs表中不存在bsite,bsector,msite,msector的配对。所以逻辑上它应该返回bsite,bsector,msite,msector,hocount和百分比,在hocount和百分比中留下NULL值,但它根本不返回任何内容(也没有发生错误)。
这是我的问题:
SELECT t6.bsite
, t6.bsector
, t6.msite
, t6.msector
, IFNULL(p.hocount, 0)
, IFNULL(p.percentage, 0)
FROM homdatapairs p
, temp6 t6
WHERE t6.bsite = p.fromcell
AND t6.bsector = p.fromsector
AND t6.msite = p.tocell
AND t6.msector = p.tosector;
答案 0 :(得分:0)
我能够弄清楚。这是有效的查询。
SELECT DISTINCT t6.bsite, t6.bsector, t6.msite, t6.msector, IF(t6.msite = p.tocell AND t6.msector = p.tosector, IFNULL(p.hocount,0), 0), IF(t6.msite = p.tocell AND t6.msector = p.tosector, IFNULL(p.percentage, 0), 0)
FROM homdatapairs p, temp6 t6
WHERE t6.bsite = p.fromcell AND t6.bsector = p.fromsector;