PHP/MySQL | MySql UPDATE Логика?
Тема закрыта by
JMCode
Причина: Сам нашел решения!
![](https://bym.guru/files/icon/13025.png)
Причина: Сам нашел решения!
Меня интересует запрос
Сначала все делаем false, если у меня 10 штук данные.
А потом сравниваем id и ставим 1 таблицу true.
'UPDATE `tbl` SET `active` = false WHERE `user` = 1'
'UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id` = 1'
А терь нужно построить запрос не 2 а 1. Всю голову ломаю =)
я бы сделал внутри SELECT 2 запроса но проше ни как?
Сначала все делаем false, если у меня 10 штук данные.
А потом сравниваем id и ставим 1 таблицу true.
'UPDATE `tbl` SET `active` = false WHERE `user` = 1'
'UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id` = 1'
А терь нужно построить запрос не 2 а 1. Всю голову ломаю =)
я бы сделал внутри SELECT 2 запроса но проше ни как?
2 разных update в одном запросе не засунуть.
тут либо myltiquery использовать
либо оставлять в таком виде.
тут либо myltiquery использовать
либо оставлять в таком виде.
Mobiaaa, через UNION сделал и норм!
262110938 (11.10.2015 в 23:22)
Mobiaaa, через UNION сделал и норм!
Mobiaaa, через UNION сделал и норм!
не самое логичное решение.
Вообще не понимаю ЗАЧЕМ
вам подсказали более логичнее идею
Mobiaaa, а что поделать то!
262110938, ответ прям соответствует самому топику.
ну да ладно
покинул топик
________
посл. ред. 11.10.2015 в 23:39; всего 1 раз(а); by Mobiaaa
ну да ладно
покинул топик
________
посл. ред. 11.10.2015 в 23:39; всего 1 раз(а); by Mobiaaa
Mobiaaa, был такой
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = false WHERE `user` = 1');
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id = 1`');
стало
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = false WHERE `user` = 1'
UNION
UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id = 1`');
Так лучше =)
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = false WHERE `user` = 1');
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id = 1`');
стало
Helper\Db::getMysql()->prepare('UPDATE `tbl` SET `active` = false WHERE `user` = 1'
UNION
UPDATE `tbl` SET `active` = true WHERE `user` = 1 AND `id = 1`');
Так лучше =)
262110938 (11.10.2015 в 23:22)
Mobiaaa, через UNION сделал и норм!
Mobiaaa, через UNION сделал и норм!
а разница? UNION просто объединяет sql запрос,то есть разницы нет как ты напишешь..
MTV, Оптимизация моя цель в кодах =) И сокрашать запросы в пдо!
Стр.: 1, 2