WebThere is a simpler way, and that doesn't need a procedure, or several "cases" Just use array Ex: select col1, col2, col3, col4 from table order by case @parameter when '1' then array [col1,col3,col4] when '2' then array [col1] when '3' then array [col4,col2] end tested in postgresql Share Improve this answer Follow edited May 31, 2024 at 21:55 WebThe syntax of the ORDER BY clause along with case statement is as shown above. It is the optional clause used in the select clause whenever we need to retrieve the resultset …
MySQL 统计 各班总人数、男女各总人数 、该班级男生比例,女生 …
WebAnother Example: ORDER BY Several Columns. There are the following SQL statement selects all Employee from the “Employees” table, sorted ascending by the “City” and … WebApr 15, 2024 · 目录 distinct group by row_number 在使用SQL提数的时候,常会遇到表内有重复值的时候,比如我们想得到 uv (独立访客),就需要做去重。 在 MySQL 中通常是使 … csulb math courses catalog
MySQL Tryit Editor v1.0 - W3School
WebNov 4, 2015 · 2 Answers Sorted by: 5 Case is supposed to return one value, not a tuple. Beside, you should compare 1 with something. If you want conditional ordering you can do that with two case statements: ORDER BY CASE WHEN x = 1 THEN FirstName ELSE GivenName END , CASE WHEN x = 1 THEN GivenName ELSE FirstName END Share … WebJan 29, 2024 · 1 Answer Sorted by: 4 You need to either repeat the expression, or derive it in a separate scope, e.g.: SELECT name, tag, CASE WHEN tag = 'a' THEN 'a2' ELSE 'b2' END AS tag2 FROM ( SELECT name, CASE WHEN name = 'a' THEN 'a' ELSE 'b' END AS tag FROM dbo.table_name ) AS derived; Share Improve this answer Follow edited Jan 29, 2024 at 3:36 WebORDER BY CASE WHEN favorited = 1 THEN 0 ELSE 1 END, CASE WHEN favorited = 1 THEN favoritedDate END, dateUpload DESC ; If the favoritedDate values are NULL when the item is not "favourited", then you really don't need the favorited column at all. The information is stored in favoritedDate: If it's null, it's not a favourite. early\u0027s sausage tennessee