Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Nhận sản phẩm min_price bằng sku

Để lọc truy vấn qua post_status trước tiên chúng ta cần tìm kiếm giá trị trong bảng chính xác là bảng wp posts, chúng ta có thể làm như vậy bằng cách cập nhật truy vấn SQL bằng câu lệnh JOIN và so khớp các giá trị tương quan trong nhiều bảng, trong trường hợp này, chúng ta đang so khớp product_id trong wp.posts với bảng trong wp.postmeta bảng.

Các bảng mà chúng tôi đang đối sánh bằng cách sử dụng câu lệnh JOIN:

  • wp.posts $wpdb->posts
  • wp.postmeta $wpdb->wc_product_meta_lookup

Dưới đây là một chức năng được cập nhật:

function get_product_min_price_by_sku( $sku ) {
    global $wpdb;

    $min_price = $wpdb->get_var(
        $wpdb->prepare(
            "
            SELECT MIN(lookup.min_price) 
            FROM {$wpdb->wc_product_meta_lookup} AS lookup
            INNER JOIN {$wpdb->posts} AS posts ON lookup.product_id = posts.id
            WHERE
            posts.post_type IN ( 'product', 'product_variation' )
            AND posts.post_status = 'publish'
            AND lookup.sku = '%s'
            LIMIT 1
            "
        , $sku)
    );

    return $min_price;
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao NHibernate không hỗ trợ chia lô trên MySql

  2. Làm cách nào để tìm bảng của tôi là MyISAM hay Innodb

  3. Kết quả nối SQL thành một đối tượng trong codeigniter

  4. MySQL chọn với điều kiện CONCAT

  5. Làm thế nào để tạo một chỉ mục duy nhất 'hai mặt' trên hai trường?