Selecting a distinct date by day only from datetime (YYYY-MM-DD HH:MM:SS) in MySQL

select distinct date from datetime sql server
sql select distinct date from timestamp
select distinct month from date sql
sql date format
sql date format dd-mmm-yyyy
convert timestamp to date sql
oracle select distinct year from date
select distinct date oracle

Executing this command brings me the following (all the dates from all columns, so it essentially did the same thing as SELECT date without distinct):


2013-02-12 16:40:52
2013-02-06 11:48:49
2013-02-06 11:36:41
2013-02-06 11:35:59
2013-02-04 19:38:12
2013-02-04 18:12:30
2013-02-04 09:58:41
2013-02-04 09:43:01
2013-02-04 09:35:51
2013-02-04 09:30:22
2013-02-04 09:24:57
2013-02-04 09:21:09
2013-02-04 08:50:13

What I need:

  1. Is there any way to alter my date table and convert it to YYYY-MM-DD instead?

  2. If not, is there a way to select distinct dates based only on the day?

mysql> select DATE_FORMAT(Current_Timestamp, '%c %d %Y') from dual;
| DATE_FORMAT(Current_Timestamp, '%c %d %Y') |
| 2 12 2013                                  |
1 row in set (0.01 sec)


of course you would be using your 'daily' table.

mysql> select DATE_FORMAT(Date, '%c %d %Y') from daily;

or maybe you want

mysql> select * from daily group by DATE_FORMAT(Date, '%c %d %Y');

A Complete Guide to MySQL DATETIME Data Type, In this tutorial, you will learn about MySQL DATETIME data type and some useful You use MySQL DATETIME to store a value that contains both date and time. the format YYYY-MM-DD HH:MM:SS[.fraction] e.g., 2015-12-20 10:01:00.999999 . 10:01:00.9 requires only 6 bytes, 1 byte for the fractional second precision. what mysql syntax I can use to select data from a mysql table based on "between dates"? I have a column that contains only dates in format like: 08.05.2016 18:09:31 (

I have found on large data sets > N millions, grouping by DATE_FORMAT can be 10-20% slower than using;

 GROUP BY someid,year(date),month(date),day(date)

MySQL DATE_FORMAT Function: Format Dates in MySQL, This tutorial shows you how to use the MySQL DATE_FORMAT function to %d, Day of the month with leading zero if it is 1 number e.g., 00, 01,02, …31 %r, Time in 12-hour format hh:mm:ss AM or PM In the query, we selected all orders whose shipped date are not NULL and sorted the orders by the shipped date. I need to SELECT in this table only by DATE and excluding the time. How do I SELECT in this table by only date and bypassing the time, even if that specific column is set to DATETIME? Example. Now it is: 2012-01-23 09:24:41. I need to do a SELECT only for this: 2012-01-23

Try this one:


MySQL DATE_FORMAT() Function, MySQL Functions. Example. Format a date: SELECT and Usage. The DATE_FORMAT() function formats a date as specified. %D, Day of the month as a numeric value, followed by suffix (1st, 2nd, 3rd, ) %r, Time in 12 hour AM or PM format (hh:mm:ss AM/PM) SELECT DATE_FORMAT("2017-06-15", "%M %d %Y");. yyyy-mm-dd hh: mm: ss where the letters stand for Y ear, M onth, D ay, H our, M inutes and S econds. Let’s say for example that we want to record that we got a new user on July 28, 2020 at exactly 16:58.

So I have just added a small part to sgeddes answer which was close to working for me but I had to as the : AS date_change so I can list the values.

$sql = "SELECT DISTINCT DATE_FORMAT(yourdate, '%Y-%m-%d') as date_change FROM 
daily ORDER BY (yourdate) DESC LIMIT 10";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

 // output data of each row
 while($row = $result->fetch_assoc()) {
 $test = $row['date_change'];
    echo $test.'<br>';


} else {
echo "0 results";

MySQL 5.6 Reference Manual :: 12.7 Date and Time , Functions that expect date values usually accept datetime values and ignore the time part. mysql> SELECT DATE_ADD('2006-05-00',INTERVAL 1 DAY); -> NULL Returns the current date as a value in ' YYYY-MM-DD ' or YYYYMMDD format, Returns the current time as a value in 'hh:mm:ss' or hhmmss format,� MySQL date format to convert to YYYY-MM-DD? MySQL query to convert YYYY-MM-DD to DD Month, YYYY date format; Convert MySQL date format from yyyy-mm-ddThh:mm:ss.sssZ to yyyy-mm-dd hh:mm:ss ? MySQL date format DD/MM/YYYY select query? How to format JavaScript date into yyyy-mm-dd format? Java Program to format date in mm-dd-yyyy hh:mm:ss

For MySQL, you can use DATE(date) to return just the date. If you want to format it, use DATE_FORMAT:

SELECT DISTINCT DATE_FORMAT(yourdate, '%Y-%m-%d') 
FROM daily ORDER BY DATE(yourdate) DESC

You cannot change the way the database stores these values.

And here is the fiddle:!2/f50527/6

Using Unix Timestamps in MySQL Mini-Course, Time format: YYYY-MM-DD HH:MM:SS or YYMMDD or YYYYMMDD. Convert from epoch to date, SELECT FROM_UNIXTIME(epoch timestamp, optional output format) This query can be easily changed to get statistics per year, per day, per day of SELECT DISTINCT FROM_UNIXTIME(epoch,"%Y") AS year, count(*) as � Time in 24 hour format (hh:mm:ss) %U: Week where Sunday is the first day of the week (00 to 53) %u: Week where Monday is the first day of the week (00 to 53) %V: Week where Sunday is the first day of the week (01 to 53). Used with %X %v: Week where Monday is the first day of the week (01 to 53). Used with %X %W: Weekday name in full (Sunday to

Date Functions in SQL Server and MySQL, As long as your data contains only the date portion, your queries will work as expected. DATEDIFF(), Returns the number of days between two dates format: YYYY-MM-DD HH:MI:SS; TIMESTAMP - format: a unique number Now we want to select the records with an OrderDate of "2008-11-11" from the table above. Here Mudassar Ahmed Khan has explained with an example, how to insert and select Date in dd/MM/yyyy format in DateTime Column of SQL Server database. This article will illustrate how to use Stored Procedures for inserting and selecting Dates in dd/MM/yyyy format.

SQL Dates and Times, In this tutorial you will learn how to work with dates and times in SQL. types supported by the MySQL database server for handling the dates and times. DATETIME, YYYY-MM-DD HH:MM:SS, 1000-01-01 00:00:00 to 9999-12-31 23: 59:59 be used not only to represent a time of day (which must be less than 24 hours),� MySQL uses 3 bytes to store a DATE value. The DATE values range from 1000-01-01 to 9999-12-31. If you want to store a date value that is out of this range, you need to use a non-temporal data type like integer e.g., three columns, and each column for the year, month, and day. You also need to create stored functions to simulate the built-in

MySQL Tutorial - MySQL By Examples for Beginners, To insert a row with values on selected columns only, use: Without DISTINCT mysql> SELECT price FROM products; +-------+ | price | +-------+ | 1.23 NOW() : returns the current date and time in the format of 'YYYY-MM-DD HH:MM:SS' . ( All other data types' default, including DATETIME , must be a constant and not a� The MySQL Date function is responsible for extracting the data section from the specified date or, expression DateTime. In MySQL, DATE() functions are used to store DateTime values and help to return the current date and time both parts when retrieved and displayed in the MySQL Server format ‘YYYY-MM-DD HH:MM: SS’.

  • Which DBMS are you using?
  • Which database? Oracle, SQL Server, Teradata, MySQL?
  • You realize we're all playing guessing games -- why not tell us which database???
  • Re-tagged based on OP's edit to the question title.
  • "Access DB"? This question is about MySQL, not Access DB.
  • bro questioner not mention any database
  • Please read the question carefully. It says "in MySQL" at the end of the question title. It also says "mysql" in the tags under the question. You can also read the other answers which are all for MySQL.
  • @Pang oh right i actually read reply comments where lot of users asking about database may he edit his question later :)