Cum să obțineți ultima zi a lunii în mysql, dând luna și anul ca intrare (Programare, Mysql, Sql, Bază De Date)

vickisys a intrebat.
a intrebat.

Cum să obțineți ultima zi a lunii în MySQL furnizând luna și anul ca intrare.

Similar example, To get last day of the month by date as input
    Eg: SELECT LAST_DAY(?) as lastDate

Format: 
Input month and year: '07/2015'
Output Result: day /*Eg: 30,31*/

Am încercat cu Formatul dateiSELECT LAST_DAY(DATE_FORMAT('09/2015','%m/%Y')) as lastDate dar nu a funcționat

3 răspunsuri
Gordon Linoff

Trebuie doar să vă convertiți valorile într-o dată. Iată o modalitate:

select last_day(date(concat_ws('-', year, month, 1)))

Comentarii

  • Cum să obțineți ultima zi furnizând formatul lunii și anului ca „09/2015”. Am încercat cu Format dată SELECT LAST_DAY(DATE_FORMAT(?,'%m/%Y')) as lastDate –  > Por vickisys.
  • Doriți funcția str_to_date(), , nu date_format(). –  > Por Gordon Linoff.
Dezvoltator

Obțineți ultima zi a lunii curente

SELECT LAST_DAY('2020-06-18') AS 'Result';

Obține ultima zi a lunii următoare

SELECT LAST_DAY(CURDATE() + INTERVAL 1 LUNĂ);

Obțineți ultima zi a lunii precedente

SELECT LAST_DAY(CURDATE() - INTERVAL 1 MONTH);

Madhivanan
set @year:=2010;
set @month:=10;
select last_day(concat(@year,'-',@month,'-01')) as last_day;