Răsfoiți Sursa

added orderBy : rand()

Nicolas Cannasse 14 ani în urmă
părinte
comite
90c03d8d87
1 a modificat fișierele cu 5 adăugiri și 0 ștergeri
  1. 5 0
      std/sys/db/SpodMacros.hx

+ 5 - 0
std/sys/db/SpodMacros.hx

@@ -863,6 +863,11 @@ class SpodMacros {
 				case "orderBy":
 					var fields = switch( o.expr.expr ) {
 					case EArrayDecl(vl): Lambda.array(Lambda.map(vl, orderField));
+					case ECall(v, pl):
+						if( pl.length != 0 || !Type.enumEq(v.expr, EConst(CIdent("rand"))) )
+							[orderField(o.expr)]
+						else
+							["RAND()"];
 					default: [orderField(o.expr)];
 					};
 					opt.orderBy = fields.join(",");