Update в БД

602
.
# dilp (22.06.2017 / 21:37)
ДоХтор, вроде что-то то...
Это демо код, как избегать циклов в sql-запросах.
.
подозреваю что не-демо код будет очень отличаться от демо кода
.
# dilp (22.06.2017 / 21:51)
подозреваю что не-демо код будет очень отличаться от демо кода
Конечно будет, на то он и демо. Он не решает задачи, а демонстрирует какой либо функционал.
.
# Koenig (22.06.2017 / 19:37)
FanLoko,
UPDATE `users` as `t1`
SET `t1`.`city` = 68
WHERE `t1`.`id` IN(
SELECT `id`
FROM
(
SELECT `t2`.`id`
FROM `users` as `t2`
WHERE `t2`.`city` = 6
Дим, спасибо, работает)
.
# Koenig (22.06.2017 / 19:37)
FanLoko,
UPDATE `users` as `t1`
SET `t1`.`city` = 68
WHERE `t1`.`id` IN(
SELECT `id`
FROM
(
SELECT `t2`.`id`
FROM `users` as `t2`
WHERE `t2`.`city` = 6
А если я например хочу использовать вот такой запрос.

UPDATE `users` as `t1`
SET `t1`.`city` = 68
WHERE `t1`.`id` IN(
    SELECT `id`
    FROM
    ( 
        SELECT `t2`.`id`
        FROM `users` as `t2` 
        WHERE `t2`.`city` здесь должны быть все значения в пределах от 60 до 67? 
    ) as `ids`
)


Или можно ли это сделать условием типа >=<?
.
(\/)____o_O____(\/)
Добавлено: 24.06.2017 / 11:04
where `f` in(60,61,62,63)

Добавлено: 24.06.2017 / 11:05
ну или заменить на
implode(',', range(60,68))
.
# Koenig (24.06.2017 / 11:05)
where `f` in(60,61,62,63)


ну или заменить на
implode(',', range(60,68))
Работает) Спасибо
Всего: 27