$wpdb prepare issue with mysql DATE_FORMAT

Today, I have a issue in $wpdb.

I used

Read More
$result = $wpdb->get_var( 
  $wpdb->prepare(
    "SELECT DATE_FORMAT(report_date, '%d-%m-%Y') FROM table WHERE report_id = %d",
     $report_id 
   )
);

The above code not works because of %d in DATE_FORMAT. How i solved this issue in wordpress

Related posts

Leave a Reply

1 comment

  1. From the Codex page for the WPDB class:

    […] the prepare method […] supports both a sprintf()-like and vsprintf()-like syntax.

    Having a look at PHP’s documentation for sprintf():

    ##Example 6

       // notice the double %%, this prints a literal '%' character
    

    So you can use

    $result = $wpdb->get_var( 
      $wpdb->prepare(
        "SELECT DATE_FORMAT(report_date, '%%d-%%m-%%Y') FROM table WHERE report_id = %d",
         $report_id 
       )
    );
    

    for your purposes.