add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE mySQLTable (invoice_date DATE);
INSERT INTO mySQLTable VALUES
(STR_TO_DATE("21/8/2567",'%d/%m/%Y')),
(STR_TO_DATE("13/9/2567",'%d/%m/%Y')),
(STR_TO_DATE("13/9/2567",'%d/%m/%Y')),
(STR_TO_DATE("13/9/2567",'%d/%m/%Y')),
(STR_TO_DATE("13/9/2567",'%d/%m/%Y')),
(STR_TO_DATE("18/9/2567",'%d/%m/%Y')),
(STR_TO_DATE("25/10/2567",'%d/%m/%Y')),
(STR_TO_DATE("25/10/2567",'%d/%m/%Y')),
(STR_TO_DATE("25/10/2567",'%d/%m/%Y')),
(STR_TO_DATE("25/10/2567",'%d/%m/%Y')),
(STR_TO_DATE("24/1/2568",'%d/%m/%Y'));

select * from mySQLTable;
Records: 11  Duplicates: 0  Warnings: 0
invoice_date
2567-08-21
2567-09-13
2567-09-13
2567-09-13
2567-09-13
2567-09-18
2567-10-25
2567-10-25
2567-10-25
2567-10-25
2568-01-24
select
DATE_FORMAT(cast(invoice_date as date), '%d/%m/%Y') as invoice_date,
CONCAT("INV",
DATE_FORMAT(cast(invoice_date as date), "%y%m"),
"-",
row_number() OVER (PARTITION BY DATE_FORMAT(cast(invoice_date as date), "%y%m"))
) as invoice_no
from mySQLTable;
invoice_date invoice_no
21/08/2567 INV6708-1
13/09/2567 INV6709-1
13/09/2567 INV6709-2
13/09/2567 INV6709-3
13/09/2567 INV6709-4
18/09/2567 INV6709-5
25/10/2567 INV6710-1
25/10/2567 INV6710-2
25/10/2567 INV6710-3
25/10/2567 INV6710-4
24/01/2568 INV6801-1