使用wampServer 3.0.6 + MySQL 5.7.14,在另一台PC上使用wampServer 2.5 + MySQL 5.6.17时,FROM子句中的所有子查询均无法正常工作。
这是其中数十个查询的2个示例
(请注意,实际上,这些示例用作较大示例的子查询,但也不能单独使用):

查询1:

    SELECT rnbr.*
    FROM
        (
            SELECT Rct_Pub_Mbr_Id,
                   COUNT(Rct_Id) AS Nbr
                   FROM recits
            WHERE Rct_Rct_Val_Id = 2 AND
                  Rct_Pub_Mbr_Id = 2
            GROUP BY Rct_Pub_Mbr_Id
        ) AS rnbr


查询2

    SELECT base.*
    FROM
        (
          SELECT Mbr_Rel_CRel_Id,
                 Mbr_Rel_Mbr_Id_2
          FROM membres_relations
          WHERE Mbr_Rel_Mbr_Id_1 = 16 AND
                Mbr_Rel_Mbr_Id_2 = 2 AND
                Mbr_Rel_CRel_Id = "BLK"
        ) AS base


最重要的是,在phpMyAdmin(4.6.4)SQL选项卡中编写这些查询,我得到以下错误(示例来自第二个查询):

. on the line with "(" after the FROM clause :
    . An expression was expected ( close to ( )
    . Unexpected token ( close to ( )
. on the line with SELECT after the "(" :
    . this type of clause has already been analised ( close to SELECT )
. on the line with ") AS base" :
    . Unexpected token ( close to ) )
    . key word not recognized ( close to AS )
    . Unexpected token ( close to base )


在以前的版本/其他版本中,这些都没有发生。

由于它是系统的,它不是由于其自身的查询内容,而是看起来更像是新配置中的“错误” ...

有谁知道该怎么办?

最佳答案

我找到了解决方案!

实际上,这是Wampserver,MySQL和phpMyadmin版本的问题。
如果发生这种情况,这是该怎么办:


将目录保存到您的程序/子目录中
(c:/ wamp / www /您的目录)
导出数据库的全部内容(SQL模式)
卸载wampserver并确保c:/ wamp目录不再存在
转到Secondary repository of Wampserver files
加载Wampserver 3.0.6(请注意,如果要加载64位版本,则应将建议的Directoy更改为c:/ wamp)
加载Wampserver更新3.0.9
加载MySQL 5.6.xx(我加载5.6.37)
加载以前的phpMyadmin版本(我加载的版本4.1.14,这是我以前的配置之一)
启动Wampserver
在任务栏中的Wampserver上单击[左键单击]-MySQL-版本-5.6.37
在任务栏中的Wampserver上单击[左键单击]-MySQL-配置-SQL模式-选择“无”
在任务栏中的Wampserver上单击鼠标右键-参数-选中“别名子菜单”
要启动phpMyadmin,请选择“您的别名”,然后选择要使用的phpMyadmin版本,而不是选择“ phpMyadmin”
将保存的目录(第1点)复制到c:/ wamp / www /
使用在第2点上执行的导出SQL导入表及其内容。
一切都应该再次工作!


我知道它看起来很棘手,但是可以用...

祝好运 !

10-07 16:42