Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL联合和类似多个表#1064 Mysql_Mysql_Sql_Union_Sql Like - Fatal编程技术网

MySQL联合和类似多个表#1064 Mysql

MySQL联合和类似多个表#1064 Mysql,mysql,sql,union,sql-like,Mysql,Sql,Union,Sql Like,谢谢你阅读我的问题。 我试图将多个表的3列连接在一起,然后找到与LIKE请求匹配的nameProduct列。 所有表都有不同的列,看起来就像3列:name、id和rate。 这是我的代码: ( SELECT nameProduct, rate, idProduct FROM tblaptoplist ) UNION ( SELECT nameProduct, rat

谢谢你阅读我的问题。 我试图将多个表的3列连接在一起,然后找到与LIKE请求匹配的nameProduct列。 所有表都有不同的列,看起来就像3列:name、id和rate。 这是我的代码:

(
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tblaptoplist 

)
UNION
    (
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tbcpulist 
)
UNION
    (
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tbgraphicslist
)
UNION
    (
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tbpccaselist 
)
UNION
    (
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tbradiatorslist 
)
UNION
    (
    SELECT
        nameProduct,
        rate,
        idProduct
    FROM
        tbramlist 

)WHERE nameProduct LIKE 'Asus'
;

MySQL是一份报告:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE
    nameProduct LIKE 'Asus' LIMIT 0, 25' at line 54

我做错了什么?请帮助我您不能直接将
WHERE
应用于
联合的结果。您可以在SELECT中筛选每个子选择的查询或换行UNION的结果:

SELECT *
  FROM (
      (
      SELECT
        nameProduct,
        rate,
        idProduct
      FROM
        tblaptoplist 
      )
      UNION ...
  ) AS r
 WHERE r.nameProduct LIKE 'Asus'

您试图调试这个问题的原因是什么?重新考虑是否应该为单个概念(产品名称)使用多个表。谢谢。MySQL不再报告错误#1064。你能帮我再问一个问题吗?'为什么即使我确信有数据与请求匹配,也没有查询到数据'。