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

Hợp nhất hai hàng thành một trong khi thay thế các giá trị rỗng

Giải pháp đơn giản nhất:

SQL> select * from t69
  2  /

NAME       NICKNAME           ID
---------- ---------- ----------
Joe        Joey               14
Joe                           14
Michael                       15
           Mick               15
           Mickey             15

SQL> select max(name) as name
  2         , max(nickname) as nickname
  3         , id
  4  from t69
  5  group by id
  6  /

NAME       NICKNAME           ID
---------- ---------- ----------
Joe        Joey               14
Michael    Mickey             15

SQL>

Nếu bạn có 11gR2, bạn có thể sử dụng hàm LISTAGG () mới, nhưng nếu không, nó đủ đơn giản để bọc câu lệnh trên trong một SELECT nối các cột NAME và NICKNAME.



  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ách tìm các con trỏ đang mở hiện tại trong Oracle

  2. Sử dụng pivot trên nhiều cột của một hàng Oracle

  3. Nhận ORA-03115:kiểu dữ liệu mạng không được hỗ trợ hoặc lỗi đại diện khi tìm nạp mảng varchar từ pl / sql ẩn danh

  4. Có thể xảy ra bế tắc với cùng một phương thức truy cập không?

  5. Cách sử dụng google dịch URL trong Oracle plsql