[英]ORDER BY lower case of output column
我可以毫無問題地運行這個Postgres查詢:
select
(select product_types.name from product_types
where product_types.id = products.product_type_id) AS product_type_name
from products
order by product_type_name
但是,當我嘗試按小寫排序時,它不起作用:
select
(select product_types.name from product_types
where product_types.id = products.product_type_id) AS product_type_name
from products
order by lower(product_type_name)
我收到此錯誤:
ERROR: column "product_type_name" does not exist
LINE 4: order by lower(product_type_name)
^
********** Error **********
ERROR: column "product_type_name" does not exist
SQL state: 42703
Character: 156
有人可以告訴我一些這方面的問題嗎?
乍一看,您的第一個查詢可以這樣重寫:
select pt.name product_type_name from product_types pt
join products p on pt.id = p.product_type_id
order by pt.name
然后,使用lower
函數進行排序意味着只需將訂單更改為:
order by lower(pt.name)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.