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

SQL - Thay thế giá trị trùng lặp bằng giá trị trống

SELECT Case When Rank=1 then
            `Company`
       Else ''
       End as Company,
       Case When Rank=1 then
            `Date`
       Else ''
       End as `Date`,
       Case When Rank=1 then
            `Paper`
       Else ''
       End as `Paper`, 
       `Condition` 
  FROM (SELECT t.*,
               CASE 
                 WHEN @Company != t.Company OR @Date != t.`Date` OR  @Paper != t.`Paper`
                     THEN @rownum := 1 
                 ELSE @rownum := @rownum + 1 
               END AS rank,
               @Company := t.Company AS var_category,
               @Date := t.`Date` AS var_Date,
               @Paper := t.`Paper` AS var_Paper 
          FROM Table1 t
          JOIN (SELECT @rownum := null, @Company := '') r ) x

Đầu ra

Company     Date        Paper   Condition
Company1    19-12-2007  PaperA  Release Second Term
                                Add Third Term
                                Append First Term

Demo trực tiếp




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm MySQL CRC32 () - Ví dụ

  2. Cách đọc dữ liệu nhất định từ mysql cho kết quả trong C #

  3. Tham gia nhiều bảng trong MySQL

  4. PHP PDO làm thế nào để chạy một yêu cầu nhiều truy vấn?

  5. Thật kỳ lạ khi kết nối SQLAlchemy MySQL của tôi luôn kết thúc ở trạng thái ngủ?