php - 我的sql错在哪里?

标签 php mysql sql

这是我的 sql 查询:

 SELECT pvl.name_parametre_value_parametre_value_lang,
       pv.id_parametre_value,
       ic.id_combinaison,
       ic.prix_combinaison,
       ic.poid_combinaison,
       ic.actif_combinaison,
       ic.actif_genere,
       pv.actif_value,
       pipv.id_parametre_value AS pipv_id_parametre_value
FROM   psimpserv_imp_combinaison_parametre_value_1 cpv
       LEFT JOIN psimpserv_imp_combinaison_1 ic
              ON ic.id_combinaison = cpv.id_combinaison
       LEFT JOIN psimpserv_imp_parametre_value pv
              ON pv.id_parametre_value = cpv.id_parametre_value
       LEFT JOIN psimpserv_imp_parametre_value_lang pvl
              ON pvl.id_parametre_value = pv.id_parametre_value
       LEFT JOIN psimpserv_imp_parametre p
              ON p.id_parametre = pv.id_parametre
       LEFT JOIN psimpserv_imp_product_impression_parametre_value pipv
              ON pipv.id_parametre_value = pv.id_parametre_value
                 AND pipv.id_product_impression = 6
WHERE  p.id_nom_domaine = 1
       AND pvl.id_lang_domaine = 3
       AND ic.id_product_impression = 6
       AND '250' LIKE (
Concat('%', pvl.name_parametre_value_parametre_value_lang, '_', pv.id_parametre, '%') )
-- AND '2' LIKE ( CONCAT('%',pvl.name_parametre_value_parametre_value_lang,'_',pv.id_parametre,'%') )
GROUP  BY ic.id_combinaison,
          cpv.id_parametre_value
ORDER  BY ic.id_combinaison,
          p.id_parametre
LIMIT  0, 32  

MySQL 返回空结果。

最佳答案

试试这个

SELECT pvl.name_parametre_value_parametre_value_lang, pv.id_parametre_value, ic.id_combinaison, ic.prix_combinaison, ic.poid_combinaison, ic.actif_combinaison, ic.actif_genere, pv.actif_value, pipv.id_parametre_value AS pipv_id_parametre_value 
FROM
  psimpserv_imp_combinaison_parametre_value_1 cpv 
  LEFT JOIN psimpserv_imp_combinaison_1 ic 
    ON ic.id_combinaison = cpv.id_combinaison 
  LEFT JOIN psimpserv_imp_parametre_value pv 
    ON pv.id_parametre_value = cpv.id_parametre_value 
  LEFT JOIN psimpserv_imp_parametre_value_lang pvl 
    ON pvl.id_parametre_value = pv.id_parametre_value 
  LEFT JOIN psimpserv_imp_parametre p 
    ON p.id_parametre = pv.id_parametre 
  LEFT JOIN psimpserv_imp_product_impression_parametre_value pipv 
    ON pipv.id_parametre_value = pv.id_parametre_value 
    AND pipv.id_product_impression = 6 
WHERE p.id_nom_domaine = 1 
  AND pvl.id_lang_domaine = 3 
  AND ic.id_product_impression = 6 
  AND '250' LIKE (
    CONCAT(
      '%', pvl.name_parametre_value_parametre_value_lang, '_', pv.id_parametre, '%'
    )
  ) 
  AND '2' LIKE (
    CONCAT(
      '%', pvl.name_parametre_value_parametre_value_lang, '_', pv.id_parametre, '%'
    )
  ) 
GROUP BY ic.id_combinaison, cpv.id_parametre_value 
ORDER BY ic.id_combinaison, p.id_parametre 
LIMIT 0, 32

关于php - 我的sql错在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49150717/

相关文章:

mysql - 在 mysql 数据库池中请求连接时达到用户限制

MySQL 错误 1406 (22001) : Data too long for column

java - 如何在Java中使用executeQuery()获取返回值?

php - 如何在 MYSQL 中正确选择最高分?

sql - 将数据库字符串枚举转换为整数值得吗?

javascript - span 标签在使用 ajax 的在线名称检查中不起作用

php - 将上传文件的名称保存到我的 SQL 数据库的此表中

PHPUnit,超全局变量。如何设置测试以正确设置 $_SERVER 和 $_GET?

php - 如何根据条件向数组添加一些项目?

MySql:将 float 转换为十进制数会产生比存储在 back.sql 文件中更多的十进制数