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

Брой Брой последователни поява на стойности в табл

Един подход е разликата в номерата на редовете:

select name, count(*) 
from (select t.*,
             (row_number() over (order by id) -
              row_number() over (partition by name order by id)
             ) as grp
      from t
     ) t
group by grp, name;

Логиката е най-лесна за разбиране, ако изпълните подзаявката и погледнете стойностите на всеки номер на ред поотделно и след това погледнете разликата.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Връщане на процент от набор от резултати в SQL Server

  2. Как да промените модела за възстановяване на база данни на SQL Server с помощта на T-SQL

  3. Преобразуване на ‘time’ в ‘datetimeoffset’ в SQL Server (T-SQL примери)

  4. Неизползван индекс на SQL Server

  5. Как да избягам от единична кавичка в SQL Server?