Note that there are some explanatory texts on larger screens.

plurals
  1. POWordpress custom wp_users, wp_usermeta join not ordering properly
    primarykey
    data
    text
    <p>I have a custom query to pull users with their user_meta for a statistics plugin I wrote. I am able to select (WHERE) based on a date range, as well as ORDER BY any of the meta fields, however, I cannot do both at the same time. I am losing my mind!! Here is my query (with default variables for reference underneath) ...</p> <pre><code>$getUserData = $wpdb-&gt;get_results("SELECT ID, user_email, user_registered, first_name.meta_value as first_name, last_name.meta_value as last_name, telephone.meta_value as telephone, country.meta_value as country, company.meta_value as company, address.meta_value as address, city.meta_value as city, professional_title.meta_value as professional_title, state.meta_value as state, areas_of_interest.meta_value as areas_of_interest FROM wp_users LEFT JOIN wp_usermeta AS first_name ON first_name.user_id=ID AND first_name.meta_key='first_name' LEFT JOIN wp_usermeta AS last_name ON last_name.user_id=ID AND last_name.meta_key='last_name' LEFT JOIN wp_usermeta AS telephone ON telephone.user_id=ID AND telephone.meta_key='telephone' LEFT JOIN wp_usermeta AS country ON country.user_id=ID AND country.meta_key='country' LEFT JOIN wp_usermeta AS company ON company.user_id=ID AND company.meta_key='company' LEFT JOIN wp_usermeta AS address ON address.user_id=ID AND address.meta_key='address' LEFT JOIN wp_usermeta AS city ON city.user_id=ID AND city.meta_key='city' LEFT JOIN wp_usermeta AS professional_title ON professional_title.user_id=ID AND professional_title.meta_key='professional_title' LEFT JOIN wp_usermeta AS state ON state.user_id=ID AND state.meta_key='state' LEFT JOIN wp_usermeta AS areas_of_interest ON areas_of_interest.user_id=ID AND areas_of_interest.meta_key='areas_of_interest' " . $where . " ORDER BY " . $orderBy . " " . $sortOrder . " LIMIT 0, " . $page_limit); $where = "WHERE (user_registered &gt;= '" . $_REQUEST['from'] . " 00:00:00' and user_registered &lt;= '" . $_REQUEST['to'] . " 00:00:00') "; $orderBy = "user_registered"; $sortOrder = "ASC"; </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload