#sql("newuserCsjiaochengList") SELECT c.`name`,a.cover,a.`owner`,a.title,a.state,a.createtime,a.id,d.istuijianlist,d.istuijian,a.bcount,a.dznum,a.plnum,a.scnum, d.headportrait ,d.nickname,d.id as uid from t_course a left join t_interest c on a.classid=c.id left join t_user d on d.id=a.userid #for(x : cond) #if(x.value!="order") #(for.index == 0 ? "where": "and") #(x.key) #para(x.value) #else #para(x.value) #end #end #end
Kv cond=new Kv(); //Kv.by("c.id=", getParaToInt("classtype")); if(getParaToInt("classtype")!=0) cond.set("c.id=", getParaToInt("classtype")); if(getParaToInt("state")!=0) cond.set("a.state=", getParaToInt("state")); if(getParaToInt("tuijian")==1) cond.set("d.istuijianlist=", 1); else if(getParaToInt("tuijian")==2) cond.set("a.istuijian=", 1); if(getParaToInt("owner")!=0) cond.set("a.`owner`=", getParaToInt("owner")-1); // switch (getParaToInt("order")) { // //最新发布 // case 0: // cond.set("order", " order by a.createtime desc"); // // break; // //最多浏览 // case 1: // cond.set("order", " order by a.bcount desc"); // // break; // //最多点赞 // case 2: // cond.set("order", " order by a.dznum desc"); // // break; // //最多收藏 // case 3: // cond.set("order", "order by a.scnum desc"); // // break; // //最多评论 // case 4: // cond.set("order", " order by a.plnum asc"); // // break; // // // // // } if(type==1) { sqlpara=Db.getSqlPara("common.newuserCsjiaochengList", Kv.by("cond", cond)); }
项目:JFinal
order by x asc, y desc
而不能: order by ? asc
而你的代码中 order by 部分使用了 #para 指令,显然是生成了问号占位,造成无论如何都是错误的