怎么把SELECT DISTINCT t1.name,t1.actionname,t1.id,t1.parentid,t2.name,t2.actionname,t2.id,t2.parentid,t3.name,t3.actionname,t3.id,t3.parentid,t4.name,t4.actionname,t4.id,t4.parentid,t5.name,t5.actionname,t5.id,t5.parentid,t1.parameter,t2.parameter,t3.parameter,t4.parameter,t5.parameter,t1.Orderno,t2.Orderno,t3.Orderno,t4.Orderno ,t5.Orderno FROM T_SYS_menu t1, T_SYS_menu t2,T_SYS_menu t3,T_SYS_menu t4,T_SYS_menu t5, T_SYS_userofusergroup a, T_SYS_charofgroup b, T_SYS_powerofchar c, T_SYS_powerofaction d WHERE t1.layer = 1 AND t2.layer(+) = 2 AND t3.layer(+) = 3 AND t4.layer(+) = 4 AND t5.layer(+) = 5 AND t2.parentid = t1.id AND t3.parentid(+) = t2.id AND t4.parentid(+) = t3.id AND t5.parentid(+) = t4.id AND a.Usergroupid = b.groupid AND b.charid = c.charid AND c.powerid = d.powerid AND t1.status = 1 AND t2.status(+) = 1 AND t3.status(+) = 1 AND t4.status(+) = 1 AND t5.status(+) = 1 AND a.status = 1 AND b.status = 1 AND c.status = 1 AND d.status = 1 AND (t1.actionname IS NULL OR t1.actionname = d.actionname) AND (t2.actionname IS NULL OR t2.actionname = d.actionname) AND (t3.actionname IS NULL OR t3.actionname = d.actionname) AND (t4.actionname IS NULL OR t4.actionname = d.actionname) AND (t5.actionname IS NULL OR t5.actionname = d.actionname) AND a.userid = ? AND t1.system = ? AND t2.system(+) = ? AND t3.system(+) = ? AND t4.system(+) = ? AND t5.system(+) = ? ORDER BY t1.Orderno,t2.Orderno,t3.Orderno,t4.Orderno,t5.Orderno
转成sql2000语句啊
转成sql2000语句啊
WHERE t1.layer = 1
AND t2.layer(+) = 2
AND t3.layer(+) = 3
AND t4.layer(+) = 4
AND t5.layer(+) = 5
AND t2.parentid = t1.id
AND t3.parentid(+) = t2.id
AND t4.parentid(+) = t3.id
AND t5.parentid(+) = t4.id
AND a.Usergroupid = b.groupid
AND b.charid = c.charid
AND c.powerid = d.powerid
AND t1.status = 1
AND t2.status(+) = 1
AND t3.status(+) = 1
AND t4.status(+) = 1
AND t5.status(+) = 1
AND a.status = 1
AND b.status = 1
AND c.status = 1
AND d.status = 1
AND (t1.actionname IS NULL OR t1.actionname = d.actionname)
AND (t2.actionname IS NULL OR t2.actionname = d.actionname)
AND (t3.actionname IS NULL OR t3.actionname = d.actionname)
AND (t4.actionname IS NULL OR t4.actionname = d.actionname)
AND (t5.actionname IS NULL OR t5.actionname = d.actionname)
AND a.userid = ?
AND t1.system = ?
AND t2.system(+) = ?
AND t3.system(+) = ?
AND t4.system(+) = ?
AND t5.system(+) = ?
ORDER BY t1.Orderno,t2.Orderno,t3.Orderno,t4.Orderno,t5.Orderno 这样的代码你也拿出来啊且不看性能,光看你代码就没人回答提醒你一下,把所有and table1(+) =table2写成and table1(*) =table2 这样最快,
或letf join,需要改语句顺序,慢慢调试吧AND t5.system(+) = ? 这个你想问谁啊,嘿嘿