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

Вземете всички последователни блокове от списък

Това е един от начините за това с помощта на самостоятелно присъединяване и union .

select t1.val
from t t1
join t t2 on t1.val = t2.val-1
union
select t2.val
from t t1
join t t2 on t1.val = t2.val-1
order by 1

Редактиране:разбрах, че това може да се направи с една заявка, вместо да се използва union .

select distinct t1.val
from t t1
join t t2 on t1.val = t2.val-1 or t1.val = t2.val+1
order by 1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да проверя настройките на InnoDB?

  2. Как да конвертирам човешка дата в unix времева марка в Mysql?

  3. Има ли начин да получите последния вмъкнат идентификатор на НЕ - автоматично увеличена колона в MySQL?

  4. Как да преброим случаите в колона, разделена със запетая?

  5. Използване на PHP и RegEx за извличане на всички стойности на опции от изходния код на сайта