- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
есть таблица точек, из нее получаю _id_gr айди графика, и количество точек на этом графике - qty
select gr_id, count(point_id) qty from bt_gr_point group by gr_id
можно ли одним запросом как то записать данные в таблицу gr , в поле points_qty?
спасибо.
futuristian,
если вот так для примера:
INSERT INTO users (id, c_id, n, u_id) VALUES((SELECT MAX(id)+1 FROM Table1 as e WHERE var='10'), '25', '1', '10');
То есть, я к тому, чтобы записывать, а уж как второй запрос - выбирать из таблицы.
как-то так.
insert into gr (gr_id, points_qty) select gr_id, count(point_id) qty from bt_gr_point group by gr_id
? :)
я немного ошибся
я говорил об update
но я думаю что нельзя.
спасибо.
есть таблица точек, из нее получаю _id_gr айди графика, и количество точек на этом графике - qty
select gr_id, count(point_id) qty from bt_gr_point group by gr_id
можно ли одним запросом как то записать данные в таблицу gr , в поле points_qty?
спасибо.
Нечто вроде
если исходить из того, что в таблице gr поле тоже gr_id называется, а если нет, то соответственно gr.gr_id подправить на нужное.
Спасибо за ответ. Попробую, хотя не верил в решение исделал реализацию на пхп.
Теперь вопрос в другом, надо обновить большое количество записей.
Ясное дело что смысл делать через отдельный update нет, я все сгруппировал, но возникладругая проблема, вот после таки условий update .... where id=1 || id=2 ... id=3000 у меня очень сильно виснет маэскуэль, правда намоей локальной машине, не положит ли этот скрипт сервер?
Что можно сделать в данном случае, или поможет только разбивка?
Miracle, where id in (1,2,3,4,5,6,7,8,9,10...) :)
bearman добавил 02.08.2010 в 13:19
+ возможно нет индекса по колонке id, если таблица содержит много записей, то эти условия будут долго применять (id =1 || id =2 || id=3..)
bearman добавил 02.08.2010 в 13:22
и я ступил, сразу не сказал, если я не ошибаюсь, то при OR индексы не используются. происходит фул скан + такая куча ифов. по крайней мере в селекте аля select * from users where username='wow' or username='wow1' выгоднее писать select * from users where username='wow' union select * from users where username='wow1' :) потому что второй вариант будет юзать индексы. на больших таблицах это критично :)
where id in (1,2,3,4,5,6,7,8,9,10...)
спасибо. а я блин и не догадался.
Miracle, бывает :)
если я не ошибаюсь, то при OR индексы не используются.
хватит врать. если все OR по одному столбцу, скорее будет использоваться чем нет.
точно сказать нельзя пока не известна статистика индексов.
IN(<список значений>) конечно удобнее для программиста.
точно сказать нельзя пока не известна статистика индексов.
а что такое статистика индекса?
поле gr_id индексируемое, автоинкриментируемое ...