Mysql
 sql >> база данни >  >> RDS >> Mysql

мета ключ и meta_value заявка в wordpress

Имате множество meta_keys срещу една колона, от която се нуждаете IN() както за meta_key, така и за стойност като

meta_key IN( 'property_amount','property_land_type') 
AND meta_value IN ('L','H','C',replace( replace(meta_value, ',', ''), '"', '' ) >= 1)

Опитайте тази заявка

SELECT wp_posts.*, wp_postmeta.meta_value FROM 
wp_posts, wp_postmeta, wp_term_relationships, wp_terms 
WHERE term_id = '12' AND term_taxonomy_id = '12' AND ID = post_id 
AND ID = object_id AND post_type = 'property' AND post_status = 'publish' 
AND meta_key IN( 'property_amount','property_land_type') 
AND meta_value IN ('L','H','C',replace( replace(meta_value, ',', ''), '"', '' ) >= 1)
GROUP BY wp_posts.ID ORDER BY replace( replace(meta_value, ',', ''), '"', '' ) DESC 
LIMIT 0, 10

РЕДАКТИРАНЕ

Опитайте този с join , присъединих се към wp_postmeta два пъти за два meta_keys

SELECT wp.*, wpm1.meta_value AS `propert_type`,
wpm2.meta_value AS `property_amount`
FROM 
wp_posts  wp
LEFT JOIN wp_postmeta wpm1 ON (wp.ID = wpm1.post_id)
LEFT JOIN wp_postmeta wpm2 ON (wp.ID = wpm2.post_id)
INNER JOIN wp_term_relationships wptr ON (wp.ID = wptr.object_id)
INNER JOIN `wp_term_taxonomy` wptt ON (wptr.term_taxonomy_id = wptt.term_taxonomy_id)
INNER JOIN wp_terms wpt ON (wptt.term_id = wpt.term_id)

WHERE wpt.term_id = '12' AND wptr.term_taxonomy_id = '12' 
AND  wp.post_type = 'property' AND wp.post_status = 'publish'
AND wpm1.meta_key = 'property_land_type' 
AND wpm2.meta_key = 'property_amount'
AND REPLACE( REPLACE(wpm2.meta_value, ',', ''), '"', '' ) >= 1
AND wpm1.meta_value IN ('L','H','C') AND  wpm1.meta_value IS NOT NULL AND  wpm2.meta_value IS NOT NULL 
GROUP BY wp.ID ORDER BY REPLACE( REPLACE(wpm2.meta_value, ',', ''), '"', '' ) DESC 
LIMIT 0, 10


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изравняване на дъщерни/родителски данни с неизвестен брой колони

  2. Vagrant - отдалечена връзка с mysql - външна скитническа ssh връзка

  3. Грешка при дублиран запис в MySQL, въпреки че няма дублиран запис

  4. Как да намерите уникални двойки от две колони в SQL?

  5. Как да получите достъп до MySQL с MySQL Root потребител