Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Премахване на дублиращи се стойности въз основа само на една колона от таблицата

Това е мястото, където функцията на прозореца row_number() е полезен:

SELECT s.siteName, s.siteIP, h.date
FROM sites s INNER JOIN
     (select h.*, row_number() over (partition by siteName order by date desc) as seqnum
      from history h
     ) h
    ON s.siteName = h.siteName and seqnum = 1
ORDER BY s.siteName, h.date


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вмъкване на ред само ако вече не е там

  2. Как да вмъкнете резултатите от съхранена процедура във временна таблица в SQL Server

  3. Конфигурация за репликация на транзакции на SQL Server

  4. Регистър на транзакциите на SQL Server — част 2

  5. Добавете изчислена колона към съществуваща таблица в SQL Server