File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 308308(defmethod compile-fn :desc [db node]
309309 (compile-direction db node))
310310
311+ (defmethod compile-fn :nulls [db node]
312+ (let [[_ args direction] (:children node)]
313+ (concat-sql (compile-sql db args) " NULLS "
314+ (-> direction :val name str/upper-case))))
315+
311316(defmethod compile-fn :raw [db node]
312317 (-> (:children node)
313318 (second )
Original file line number Diff line number Diff line change 864864 '(over (rank )
865865 (partition-by
866866 :depname
867- (sql/ order-by (desc :salary ) :empno )))
867+ (order-by (desc :salary ) :empno )))
868868 :pos )]
869869 (sql/from :empsalary ))
870870 :ss ))
970970 (sql/from :table ))
971971 [" SELECT array_agg(\" a\" ORDER BY \" b\" DESC) FROM \" table\" " ]))
972972
973+ (deftest test-select-array-agg-order-by-desc-nulls-last
974+ (sql= (sql/select db ['(array_agg :a (order-by (nulls (desc :b ) :last )))]
975+ (sql/from :table ))
976+ [" SELECT array_agg(\" a\" ORDER BY \" b\" DESC NULLS LAST) FROM \" table\" " ]))
977+
973978(deftest test-select-string-agg-order-by
974979 (sql= (sql/select db ['(string_agg :a " ," (order-by :a ))]
975980 (sql/from :table ))
You can’t perform that action at this time.
0 commit comments