PostgreSQL cung cấp cho chúng ta những cách sau để nối chuỗi và số:
-
CONCAT()
hàm, nối các đối số của nó. - Toán tử nối ống dẫn (
||
), nối các toán hạng của nó.
Ví dụ về mỗi bên dưới.
CONCAT()
Chức năng
CONCAT()
hàm nối các biểu diễn văn bản của các đối số của nó.
Ví dụ:
SELECT CONCAT('Player', 456);
Kết quả:
Player456
Chúng ta có thể bao gồm một khoảng trắng, bằng cách thêm một khoảng trắng vào chuỗi hiện có hoặc bằng cách nối bao gồm một đối số thứ ba chỉ bao gồm một khoảng trắng:
SELECT
CONCAT('Player ', 456) AS "Option 1",
CONCAT('Player', ' ', 456) AS "Option 2";
Kết quả:
Option 1 | Option 2 ------------+------------ Player 456 | Player 456
Nhà điều hành nối ống (||
)
Ví dụ này sử dụng toán tử nối (||
):
SELECT 'Player ' || 456;
Kết quả:
Player 456
Trong trường hợp này, tôi đã thêm một khoảng trắng vào đối số đầu tiên.
Nối các số mà không có chuỗi
Nếu bạn cần nối hai số nhưng không có chuỗi, trước tiên bạn cần phải truyền ít nhất một trong các số thành một chuỗi. Nếu không sẽ xảy ra lỗi.
Ví dụ về lỗi:
SELECT 123 || 456;
Kết quả:
ERROR: operator does not exist: integer || integer LINE 1: SELECT 123 || 456; ^ HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
Dưới đây là một cách nhanh chóng để khắc phục sự cố này:
SELECT CAST(123 AS varchar(3)) || 456;
Kết quả:
123456