条件分组子句 (sqlite)

Ale*_*lex 1 sql sqlite pdo group-by conditional-statements

在语句中SELECT,是否可以使用GROUP BY col_Aif col_B = "some_value", else GROUP BY col_C?那么结果中是否有用于分组的字段?

喜欢

SELECT value_of_the_column_used_for_group 
   FROM table WHERE ... 
   GROUP BY (IF col_B = "some_value" : col_A : ELSE : col_C)
   LIMIT 0, 20;
Run Code Online (Sandbox Code Playgroud)

基本上我想选择具有不同父级的子记录或具有不同 ID 的父级记录。但我想选择父 ID,可以是子记录中的 ID 列或“parent_ID”列

Gor*_*off 5

你,你可以使用这样的case语句:

SELECT (case when col_B = 'some_value' then col_A ELSE col_C end) 
FROM table WHERE ... 
GROUP BY (case when col_B = 'some_value' then col_A ELSE col_C end)
LIMIT 0, 20;
Run Code Online (Sandbox Code Playgroud)