Wordpress - İki özel alanlar konuda SQL sorgusu

0 Cevap php

Ben şimdiye kadar bu sorguyu var:


if(!empty($_SESSION['s_property_region'])) {
    $sqlWHERE .= " AND $wpdb->postmeta.meta_key = 'property_region' AND $wpdb->postmeta.meta_value = '".$_SESSION['s_property_region']."'";
}
if(!empty($_SESSION['s_property_bedrooms'])) {
    $sqlWHERE .= " AND $wpdb->postmeta.meta_key = 'property_bedrooms' AND $wpdb->postmeta.meta_value = '".$_SESSION['s_property_bedrooms']."'";
}
$sql    =   "SELECT $wpdb->posts.ID
             FROM $wpdb->posts
             LEFT JOIN $wpdb->postmeta ON ($wpdb->posts.ID = $wpdb->postmeta.post_id)
             WHERE $wpdb->posts.post_status = 'publish'
             AND $wpdb->posts.post_type = 'property'
             ".$sqlWHERE."
             ORDER BY $wpdb->posts.post_date DESC";

Ben sadece birlikte iki tek özel alanın aramak değil, eğer çalışır. Neden ve onun yol SOL eserlerini katılın çünkü biliyorum. Post_type aynı anda iki şey olabilir bir satır Orada olacak değildir.

Im böyle bir yapıyı almak için gidiyoruz katıldıktan sonra:

|   ID   |   meta_key          |   meta_value   |
|   1    |   property_region   |   East         |
|   1    |   property_bedrooms |   4            |
|   2    |   property_region   |   West         |
|   2    |   property_bedrooms |   2            |

Böyle bir yapının içine iki tablo açabilirsiniz bir sorgu var:

|   ID   |   property_region   |   property_bedrooms   |
|   1    |   East              |   4                   |
|   2    |   West              |   2                   |

Sorgu tablo bu o = VE bu olduğunu çalışacaktır = NEREDE yukarıda sonra benim basit gibi görünmesini sağlayabilirsiniz eğer.

Bu konuda herhangi bir yardım büyük takdir

Teşekkürler

Scott

EDIT: Bazı Ben şimdi birlikte bu kodu koymak hakkında arıyorsunuz sonra: http://pastebin.com/5YYDLyeR Çok çalışır ve sonra yaşıyorum ama yapısı döndürür kısa sürede ben property_region ve property_bedrooms üzerinde bir where yapmaya çalışın gibi olsun: # 1054 - Bilinmeyen sütun 'property_bedrooms' where yan tümcesi '

EDIT2: Tamam ben PMV kodu almış ve mutlaka muktedir benim NEREDEN bir alt sorgu yapmak zorunda kalmıştım fıkra: http://pastebin.com/dvTgsU7S Bu kod ne istediğiniz ama bu ulaşmanın daha iyi yolları vardır sorgulayabilir? Ben DB 1000 + girişleri olduğunda performans sorunu olacağını tahmin ...

0 Cevap