我有一个名为 eleva 的表,其中包含 inicio_periodo、id 列,当满足条件时,我想用来自该表的一些数据填充另一个表。我正在尝试应该工作的 where 语句,但无论条件如何,它都会插入到另一个表中,这是我的代码:
for($i=0; $i < $tamanho_array_eleva-1; $i++) {
if($array_eleva[$i+1] - $array_eleva[$i] > 1){
$con->query("
INSERT INTO eventos_dias
SELECT DATE(inicio_periodo),'1','0','0','0'
FROM eleva
WHERE id = $array_eleva[$i] AND 0<=HOUR(inicio_periodo)<6");
$con->query("
INSERT INTO eventos_dias
SELECT DATE(inicio_periodo),'0','1','0','0'
FROM eleva
WHERE id = $array_eleva[$i] AND 6<=HOUR(inicio_periodo)<12");
$con->query("
INSERT INTO eventos_dias
SELECT DATE(inicio_periodo),'0','0','1','0'
FROM eleva
WHERE id = $array_eleva[$i] AND 12<=HOUR(inicio_periodo)<18");
$con->query("
INSERT INTO eventos_dias
SELECT DATE(inicio_periodo),'0','0','0','1'
FROM eleva
WHERE id = $array_eleva[$i] AND 18<=HOUR(inicio_periodo)<24");
}
}
我知道它不起作用,因为目前在表上我只有 16 小时的数据......但无论如何它都在执行所有插入。有人看到错误吗?
只要有帮助:我的想法是在number<=hour(inicio_periodo)<number
满足条件时用所选值填充另一个表。提前致谢!