Tôi có một bảng có chứa một lĩnh vực dấu phẩy tách chuỗi:Splitting một bằng dấu phẩy trường trong PostgreSQL và làm một UNION ALL trên tất cả các bảng kết quả
ID | fruits
-----------
1 | cherry,apple,grape
2 | apple,orange,peach
Tôi muốn tạo ra một phiên bản bình thường của bảng, như thế này:
ID | fruits
-----------
1 | cherry
1 | apple
1 | grape
2 | apple
2 | orange
2 | peach
Các tài liệu postgresql 8.4 mô tả một hàm regexp_split_to_table có thể biến một bảng duy nhất:
SELECT foo
FROM regexp_split_to_table('the quick brown fox jumped over the lazy dog',E'\\s+') AS
foo;
.210
mang đến cho bạn điều này:
foo
--------
the
quick
brown
fox
jumped
over
the
lazy
dog
(9 rows)
Nhưng đó chỉ là một lĩnh vực duy nhất. Những gì tôi muốn làm là một số loại UNION áp dụng cho tất cả các bảng được tạo ra bằng cách chia tách từng trường. Cảm ơn bạn.
cảm ơn - regexp_split_to_table (trái cây, E ',') AS fruit_split –
bạn có thể vui lòng giúp tôi với http://stackoverflow.com/questions/40005974/convert-comma-seperated-db-items-to-isolated-rows – Learner
tôi đã thử SELECT CATEGORI.ID, regexp_split_to_table (CATEGORI.CATEGORY, E ',') AS split_fruits FROM CATEGORI; – Learner