diff --git a/frappe/database/query.py b/frappe/database/query.py index 846507896f..570c3e6a63 100644 --- a/frappe/database/query.py +++ b/frappe/database/query.py @@ -480,9 +480,14 @@ class Engine: if is_str: if fields == "*": return fields - if " as " in fields: - fields, reference = fields.split(" as ") - fields = Field(fields).as_(reference) + if "`" in fields: + fields = PseudoColumn(fields) + if " as " in str(fields): + fields, reference = str(fields).split(" as ") + if "`" in str(fields): + fields = PseudoColumn(f"{fields} as {reference}") + else: + fields = Field(fields).as_(reference) if not is_str and fields: if issubclass(type(fields), Criterion):