mysql - 在 Mariadb 中向 3 表查询添加进一步的条件

标签 mysql sql mariadb

当前查询

SELECT vcc.name AS item, vcc.prodid, vcc.quantity AS qty,
       UPPER(vcc.custom_message) AS nickname, vfd1.value AS fullname,
       vfd2.value as email, vcc.purchaseid, vcc.price
FROM vxu_4_wpsc_cart_contents AS vcc INNER JOIN
     vxu_4_wpsc_submited_form_data AS vfd1
     ON vcc.purchaseid = vfd1.log_id AND vfd1.form_id = 2 INNER JOIN
     vxu_4_wpsc_submited_form_data AS vfd2
     ON vcc.purchaseid = vfd2.log_id AND vfd2.form_id = 9

我想添加一个条件,即表“vxu_4_wpsc_purchase_logs”上的“processed”列中的值为“2”,以便仅返回已完成的销售。我正在努力解决逻辑/语法问题。希望图像是可读的。

bigger image

最佳答案

试试这个。我已按id加入表purchase_logs,并按processed列过滤结果集,其值等于2

SELECT vcc.name AS item, 
       vcc.prodid, 
       vcc.quantity AS qty,
       UPPER(vcc.custom_message) AS nickname, 
       vfd1.value AS fullname,
       vfd2.value as email, 
       vcc.purchaseid, 
       vcc.price
FROM vxu_4_wpsc_cart_contents AS vcc 
    INNER JOIN vxu_4_wpsc_submited_form_data AS vfd1 ON vcc.purchaseid = vfd1.log_id 
                                                            AND vfd1.form_id = 2 
    INNER JOIN vxu_4_wpsc_submited_form_data AS vfd2 ON vcc.purchaseid = vfd2.log_id 
                                                            AND vfd2.form_id = 9
    INNER JOIN vxu_4_wpsc_purchase_logs AS wpl ON wpl.id = vcc.purchaseid
WHERE wpl.processed = 2

关于mysql - 在 Mariadb 中向 3 表查询添加进一步的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34707356/

相关文章:

sql - 使用GROUP BY选择多个(非聚合函数)列

mysql - ST_Area() 获取纬度和经度

mysql - 触发器优化

mysql - 在perl程序中嵌入shell命令

PHP变量与mysql结果集

php - 我应该使用哪种 SQL 类型来输入值 4.865472349

mysql - 模式匹配如 Select Query

QA 迁移到 Maria DB 后的 MYSQL,应用程序查询返回列结果集元数据的不同情况

mysql - 将列名转换为大写的 MYSQL 脚本

mysql - 2 列的独特组合,顺序无关