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

MySQL - Chuyển đổi một giá trị trùng lặp thành một giá trị duy nhất với một phép nối tăng dần

Có vẻ như bạn chỉ muốn CONCAT() các giá trị cùng nhau:

select data, group_row_number, 
  concat(data, cast(group_row_number as char)) as num,
  overall_row_num
from
(
  select data,
        @num := if(@data = `data`, @num + 1, 1) as group_row_number,
        @data := `data` as dummy, overall_row_num
  from
  (
    select data, @rn:[email protected]+1 overall_row_num
    from yourtable, (SELECT @rn:=0) r
  ) x
  order by data, overall_row_num
) x
order by overall_row_num

Xem SQL Fiddle with Demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Java PreparedStatement truy xuất ID được chèn lần cuối

  2. Sử dụng bảng điều khiển MySQL thông qua tập lệnh PowerShell

  3. PHP / MySQL - Lỗi cú pháp SQL?

  4. JSON đang hiển thị lỗi 403 khi cố gắng tìm nạp dữ liệu từ cơ sở dữ liệu trong Android

  5. Làm thế nào để sử dụng chuỗi PHP trong truy vấn mySQL LIKE?