sql 查找发票号码差距 - Buscar huecosennúmerosdefacturación

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 查找发票号码差距 - Buscar huecosennúmerosdefacturación相关的知识,希望对你有一定的参考价值。

/*
Table name: documentos_facturas
Number field: numero
Sample data numbers: 1, 2, 3, 6, 9
*/

/* Find just the the first gap for invoice number - El número que correspondería al primer hueco */

SELECT MIN(a.numero)+1 AS next_id
FROM documentos_facturas a
LEFT JOIN documentos_facturas b ON a.numero=b.numero-1
WHERE b.numero IS NULL

/* RETURNS: 

next_id = 4

*/
 
/* All gaps with their ranges - Todos los huecos con sus rangos */
 
SELECT (t1.numero + 1) as gap_starts_at, 
(SELECT MIN(t3.numero) -1 FROM documentos_facturas t3 WHERE t3.numero > t1.numero) as gap_ends_at 
FROM documentos_facturas t1 
WHERE NOT EXISTS (SELECT t2.numero FROM documentos_facturas t2 WHERE t2.numero = t1.numero + 1) 
HAVING gap_ends_at IS NOT NULL

/* RETURNS:  

gap_starts_at = 4 / gap_ends_at = 5 
gap_starts_at = 7 / gap_ends_at = 8 

*/

以上是关于sql 查找发票号码差距 - Buscar huecosennúmerosdefacturación的主要内容,如果未能解决你的问题,请参考以下文章

Postgresql SQL在发票号上查找不同部门的收入

sql Buscar tablas en una base de datos SQL SERVER

在字符串中查找多个半可预测模式

sql Buscar por fecha en un campo fechahora在现场日期时间搜索日期

Magento - 自定义发票号码

Cloud Firestore + VueJs 自动生成的数字发票号码