Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.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中嵌套选择中的更新不起作用_Mysql_Select_Nested - Fatal编程技术网

重复执行时,MySQL中嵌套选择中的更新不起作用

重复执行时,MySQL中嵌套选择中的更新不起作用,mysql,select,nested,Mysql,Select,Nested,我从网站上发布的一个查询中得到了这个答案。它在第一次运行时效果很好,所以我接受了答案,但现在如果重复执行,它就不会这样做!update列只被引用一次,为什么在第二次执行时它不起作用呢。T1.col1在实际情况下分配UNIX时间。另外,我不理解t11在from列表中的作用 update T1 join (select max(col3) as maxcol3 from T1 t11 where co

我从网站上发布的一个查询中得到了这个答案。它在第一次运行时效果很好,所以我接受了答案,但现在如果重复执行,它就不会这样做!update列只被引用一次,为什么在第二次执行时它不起作用呢。T1.col1在实际情况下分配UNIX时间。另外,我不理解t11在from列表中的作用

       update T1 join
             (select max(col3) as maxcol3
               from T1 t11
               where col2 = 12345
             ) tmax
                on T1.col3 = tmax.maxcol3 and
                   T1.col2 = 12345
        set T1.col1 = 500;

t11
是一个
别名
——别名用于为列、表或表达式结果提供临时名称。例如,如果需要自联接,则不能执行
。。。从table.col1=table.col2
上的table连接table,因为
table
不明确(哪个表?第一个还是第二个?)。您必须使用别名:
。。。从table.col1=alias.col2上的表作为别名联接table
您希望第二次发生什么?
col1
的值已设置为
500
。谢谢!戈登。我希望你能回应。col1的值已设置为500。符合事实的但是MySQL rowcount()函数在没有其他db活动的情况下仍然应该返回1或大于零。它正在返回零。没有语法错误。当我更改500的值(实际上是UNIX时间)时,有时确实会得到一个不可预测的(或者可能是我没有注意到模式)行计数>0