MySQL select rows with date like

后端 未结 6 1926
刺人心
刺人心 2020-12-10 12:31

In MySQL I have this query

SELECT DISTINCT date, descr FROM book ORDER BY date

Date is in format yyyy-mm-dd

I want to

6条回答
  •  一向
    一向 (楼主)
    2020-12-10 12:51

    Using DATE_FORMAT function

    SELECT DISTINCT date, descr FROM book 
    WHERE DATE_FORMAT(date, '%Y %m') = DATE_FORMAT('2012-01-01', '%Y %m')
    ORDER BY date
    

    Or using MONTH and YEAR functions

    SELECT DISTINCT date, descr FROM book 
    WHERE Month(date) = Month('2012-01-01')
    AND Year(date) = Year('2012-01-01')
    ORDER BY date;
    

    Or using BETWEEN functions

    SELECT DISTINCT date, descr FROM book 
    WHERE date BETWEEN '2012-01-01'
    AND '2012-01-31'
    ORDER BY date;
    

    Or using <= and >= operators

    SELECT DISTINCT date, descr FROM book 
    WHERE date >= '2012-01-01'
    AND date <= '2012-01-31'
    ORDER BY date;
    

    See this SQLFiddle

提交回复
热议问题