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

Truy xuất các giá trị khác biệt với LISTAGG trong Oracle 12C

Bạn sẽ cần bước bổ sung:đầu tiên tìm các giá trị riêng biệt, sau đó tổng hợp chúng. Ví dụ:

SQL> with test (id, col) as
  2    (select 1, 'x' from dual union all
  3     select 1, 'x' from dual union all
  4     --
  5     select 2, 'w' from dual union all
  6     select 2, 't' from dual union all
  7     select 2, 'w' from dual union all
  8     --
  9     select 3, 'i' from dual
 10    ),
 11  -- first find distinct values ...
 12  temp as
 13    (select distinct id, col from test)
 14  -- ... then aggregate them
 15  select id,
 16         listagg(col, ';') within group (order by col) result
 17  from temp
 18  group by id;

        ID RESULT
---------- ----------
         1 x
         2 t;w
         3 i

SQL>



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật Bảng Oracle từ Excel VBA Macro bằng cách sử dụng kết nối ODBC

  2. Chuyển hướng đến url trong tab mới từ mã plsql

  3. Oracle - Nhập dữ liệu vào một bảng với một tên khác?

  4. ORA-01401:giá trị được chèn quá lớn cho cột CHAR

  5. truy vấn sql oracle phân bổ thanh toán