Trong PostgreSQL, chúng ta có thể sử dụng initcap()
chức năng định dạng một chuỗi văn bản để sử dụng chữ hoa đầu tiên. Tức là, nó chuyển đổi chữ cái đầu tiên của mỗi từ thành chữ hoa và phần còn lại thành chữ thường.
Cú pháp
Cú pháp như sau:
initcap ( text )
Nơi text
là văn bản sẽ được chuyển đổi thành chữ hoa ban đầu.
Ví dụ
SELECT initcap('Bay of pigs');
Kết quả:
Bay Of Pigs
Dưới đây là một ví dụ bắt đầu bằng tất cả văn bản viết hoa:
SELECT initcap('PRACHUAP KHIRI KHAN');
Kết quả:
Prachuap Khiri Khan
Các từ là chuỗi các ký tự chữ và số được phân tách bằng các ký tự không phải chữ và số:
SELECT
initcap('shrink-wrap') AS "1",
initcap('shrink.wrap') AS "2",
initcap('shrink,wrap') AS "3";
Kết quả:
+-------------+-------------+-------------+ | 1 | 2 | 3 | +-------------+-------------+-------------+ | Shrink-Wrap | Shrink.Wrap | Shrink,Wrap | +-------------+-------------+-------------+
Các số là chữ và số, vì vậy việc viết hoa các từ tiếp theo sẽ phụ thuộc vào việc có hay không có một ký tự khác không phải là chữ và số:
SELECT
initcap('shrink1wrap') AS "1",
initcap('shrink1 wrap') AS "2";
Kết quả:
+-------------+--------------+ | 1 | 2 | +-------------+--------------+ | Shrink1wrap | Shrink1 Wrap | +-------------+--------------+
Ví dụ về cơ sở dữ liệu
Dưới đây là một ví dụ về việc chuyển đổi kết quả của một truy vấn cơ sở dữ liệu thành các chữ viết hoa ban đầu:
SELECT
title,
initcap(title)
FROM film
LIMIT 10;
Kết quả:
+------------------+------------------+ | title | initcap | +------------------+------------------+ | ACADEMY DINOSAUR | Academy Dinosaur | | ACE GOLDFINGER | Ace Goldfinger | | ADAPTATION HOLES | Adaptation Holes | | AFFAIR PREJUDICE | Affair Prejudice | | AFRICAN EGG | African Egg | | AGENT TRUMAN | Agent Truman | | AIRPLANE SIERRA | Airplane Sierra | | AIRPORT POLLOCK | Airport Pollock | | ALABAMA DEVIL | Alabama Devil | | ALADDIN CALENDAR | Aladdin Calendar | +------------------+------------------+
Ở đây tôi đã sử dụng pagila
cơ sở dữ liệu mẫu. Cơ sở dữ liệu này lưu trữ tên phim bằng các ký tự viết hoa trong title
cột. Trong trường hợp này, tôi đã sử dụng initcap()
chức năng chuyển đổi title
cột để sử dụng chữ hoa đầu tiên.