Search code examples
mysqlsqlwordpresspost-meta

Wordpress get max post meta between values


I already have a query like :

SELECT max(cast(meta_value as unsigned)) AS max_racer_nr FROM wp_postmeta WHERE meta_key='racer_nr'

I need to get max racer_nr which is between 1 - 99 or 100 - 199, or 200 - 999 depending on which class racer belongs to.


Solution

  • SELECT MAX(CAST(`meta_value` AS unsigned)) AS `max_racer_nr` FROM `wp_postmeta` WHERE `meta_key` = 'racer_nr' AND `meta_value` BETWEEN 1 AND 99; 
    

    or

    SELECT MAX(CAST(`meta_value` AS unsigned)) AS `max_racer_nr` FROM `wp_postmeta` WHERE `meta_key` = 'racer_nr' AND `meta_value` >= 1 AND `meta_value` <= 99; 
    

    You'd just have to change the values in your PHP code depending on the class of the racer. Unless I misunderstand what you need.