Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.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
Java 如何将查询结果添加到列中_Java_Mysql_Unix - Fatal编程技术网

Java 如何将查询结果添加到列中

Java 如何将查询结果添加到列中,java,mysql,unix,Java,Mysql,Unix,我有一个返回一列值的查询: 选择CONCAT 从\u unixtimelastaletime/1000,'%Y-%d-%m%h:%i:%s', CASTEXTRACTMICROSECOND FROM_unixtimelastSaleTime/1000/1000 签字 来自IEX_Tick; 如何将此列复制到同一表中的现有列?我相信子查询可以: 更新IEX\u勾选集SomeColumn= 选择CONCAT 从\u unixtimelastaletime/1000,'%Y-%d-%m%h:%i:%s

我有一个返回一列值的查询:

选择CONCAT 从\u unixtimelastaletime/1000,'%Y-%d-%m%h:%i:%s', CASTEXTRACTMICROSECOND FROM_unixtimelastSaleTime/1000/1000 签字 来自IEX_Tick;
如何将此列复制到同一表中的现有列?

我相信子查询可以:

更新IEX\u勾选集SomeColumn= 选择CONCAT 从\u unixtimelastaletime/1000,'%Y-%d-%m%h:%i:%s', CASTEXTRACTMICROSECOND FROM_unixtimelastSaleTime/1000/1000签名 来自IEX_Tick; 编辑: 回应

在做了一些研究之后,我发现,尽管上面建议的解决方案是有效的SQL,但它不是MySQL中更新表的一种受支持的方式

我从这里的各种有关堆栈溢出的帖子中收集到的信息,例如,并建议MySQL限制这些类型的更新查询:

。。。因为您的更新可能是周期性的…如果更新该记录会导致某些事情发生,从而导致WHERE条件为FALSE,该怎么办?你知道不是这样的,但引擎不是。在操作中,工作台上也可能有相反的锁

因此,有助于避免MySQL设置的这种任意限制的可行替代方法是使用另一个子查询,这次是在FROM子句中,如下所示:

更新IEX\u勾选集SomeColumn= 选择CONCAT 从\u unixtimelastaletime/1000,'%Y-%d-%m%h:%i:%s', CASTEXTRACTMICROSECOND FROM_unixtimelastSaleTime/1000/1000签名 从…起 从IEX中选择*勾选为SomeName ;
注意:我个人会避免使用SELECT*FROM IEX_勾选,特别是如果IEX_勾选有很多列的话。我认为优化子查询的好方法是只使用所需的列。

我尝试过这样做,但出现了一个错误,您无法在From子句中为update指定目标表“IEX_Tick”。我一直在搜索,这似乎是一个mysql的东西,你是对的@ajasif。查看我的编辑。我做了一些研究,找到了一个适合你的解决方案