从CSV文件中获取值并搜索MySQL数据库

时间:2016-01-20 17:57:37

标签: php mysql wordpress csv

我有一个Wordpress包含的查询,其执行以下操作:

        $sql = "SELECT DISTINCT meta_value FROM $wpdb->postmeta WHERE meta_key = 'merchant_id' LIMIT 6";
$results = $wpdb->get_results($sql);
     foreach ($results as $row)
                {
                    echo $row->meta_value . ",";
                    //sprintf("SELECT * FROM retailers WHERE advertiserId = '%s'", $row->meta_value);
                }

    //clean all results
    $wpdb->flush();

它解析所有页面自定义字段(商家ID号),并返回以逗号分隔的任何唯一不同值。这一点很有用。

即:以上可能会返回:1301,345,723,134,1435

我还有一个包含约20个字段的单独MySQL表,其中三个是MerchantID,programmeName和commissionMax。 CSV中的每个值都与数据库中的MerchantID相关联。

无论CSV中出现的商家ID数量多少 - 我都要解析它们,但要显示三个最高佣金率(commissionMax)以及programmeName。

我设法连接到我的外部数据库并检索适当的值(使用上面的注释代码)但是这显示了所有零售商的信息。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

使用以下查询和限制:

SELECT *                             // select all fields
FROM table_name                      // from your table
WHERE MerchantID IN (your_ids_here)  // IDs received from previous query or wherever
ORDER BY commissionMax DESC          // descending sort by commissionMax field
LIMIT 3                              // take first 3 results