title: Implicit conversion of date literals (not datetime literals)
body: <p>When will this query</p>
  
  <pre><code>select *
  from payments
  where payment_date between '2013-06-01' and '2013-09-01';
  </code></pre>
  
  <p>produce different results from</p>
  
  <pre><code>select *
  from payments
  where payment_date between DATE('2013-06-01') and DATE('2013-09-01');
  </code></pre>
  
  <p>where payment_date is a date (not datetime)?</p>
  
  <p><strong>Update</strong>
  I should mention that this is not a hypothetical question but one from my current work project.  There are several places in the code that will need to be reworked, but I'd like to avoid making changes if it's not necessary.</p>
  
  <p><strong>Also</strong> It is easy to show with particular sets of data that they are the same, but I haven't been able to find a difference if one exists.  If they are the same, I'd like a reference to the manual.  When I searched the relevant part of manual, I found it ambiguous.  If they are different, then an example will suffice.  Thank you for the help.</p>
  
  <p>The <a href="http://dev.mysql.com/doc/refman/5.0/en/type-conversion.html" rel="nofollow">manual</a> states:</p>
  
  <blockquote>
    <p>When an operator is used with operands of different types, type
    conversion occurs to make the operands compatible. Some conversions
    occur implicitly.</p>
  </blockquote>
  
  <p>and specifically comments on DATETIME fields:</p>
  
  <blockquote>
    <p>If one of the arguments is a TIMESTAMP or DATETIME column and the
    other argument is a constant, the constant is converted to a timestamp
    before the comparison is performed. This is done to be more ODBC-friendly. Note that this is not done for the arguments to IN()! To be safe, always use complete datetime, date, or time strings when doing comparisons. For example, to achieve best results when using BETWEEN with date or time values, use CAST() to explicitly convert the values to the desired data type.</p>
  </blockquote>
  
  <p>Does implicit conversion also hold for DATE strings? The advice is to cast, but I'd like to know in my queries above when can I expect different results.</p>