Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm thế nào để nhiều hàng có thể được nối thành một trong Oracle mà không cần tạo một thủ tục được lưu trữ?

Từ Oracle 11gR2, mệnh đề LISTAGG sẽ thực hiện thủ thuật:

SELECT question_id,
       LISTAGG(element_id, ',') WITHIN GROUP (ORDER BY element_id)
FROM YOUR_TABLE
GROUP BY question_id;

Hãy cẩn thận nếu chuỗi kết quả quá lớn (hơn 4000 ký tự cho VARCHAR2, chẳng hạn):từ phiên bản 12cR2, chúng tôi có thể sử dụng ON OVERFLOW TRUNCATE / ERROR để giải quyết vấn đề này.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mục đích của việc sử dụng các loại tập hợp PL / SQL khác nhau trong Oracle

  2. Làm thế nào để xử lý các tham số tùy chọn trong truy vấn SQL?

  3. Cách nhanh chóng để tạo các chuỗi được nối trong Oracle

  4. Sử dụng Oracle JDeveloper 12c với Cơ sở dữ liệu Oracle, Phần 2

  5. Oracle Instant Client dành cho thiết bị Debian dựa trên ARM