The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"MySQL + PHP. Сложный SQL запрос."
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"MySQL + PHP. Сложный SQL запрос."
Сообщение от alex_ezh emailИскать по авторуВ закладки(ok) on 24-Ноя-04, 19:05  (MSK)
Ребят, очень нужно собрать все в одном запросе.
Не охота посредством ПХП это делать.

Нужно сделать примерно это, но намного проще, если можно.

DELETE FROM tbl;
DELETE FROM jifecountrate;
INSERT INTO jifecountrate
      SELECT id-2031000, COUNT(id) as skachki
      FROM rates
      WHERE id like '2031%'
      GROUP BY id;
INSERT INTO tbl
      SELECT id-2032000, COUNT(id) as skachki
      FROM rates
      WHERE id like '2032%'
      GROUP BY id;
SELECT (r0.id + 2032000) as id, (r0.skachki + r1.skachki) as skachki
FROM jifecountrate r0, tbl r1
WHERE r0.id = r1.id
UNION
SELECT (r1.id + 2032000) as id, (r0.skachki + r1.skachki) as skachki
FROM jifecountrate r0, tbl r1
WHERE r0.id = r1.id
ORDER BY id DESC;

Мне нужно будет из пяти подобных запросов(здесь два) сделать тоже самое.
Как UPDATE прикрутить так и не понял ;(

Поможите, чем можите ;(... плиз...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "MySQL + PHP. Сложный SQL запрос."
Сообщение от gr Искать по авторуВ закладки on 25-Ноя-04, 03:57  (MSK)
>Ребят, очень нужно собрать все в одном запросе.
>Не охота посредством ПХП это делать.
>
>Нужно сделать примерно это, но намного проще, если можно.
>
>DELETE FROM tbl;
>DELETE FROM jifecountrate;
>INSERT INTO jifecountrate
>      SELECT id-2031000, COUNT(id) as skachki
>      FROM rates
>      WHERE id like '2031%'
>      GROUP BY id;
>INSERT INTO tbl
>      SELECT id-2032000, COUNT(id) as skachki
>      FROM rates
>      WHERE id like '2032%'
>      GROUP BY id;
>SELECT (r0.id + 2032000) as id, (r0.skachki + r1.skachki) as skachki
>FROM jifecountrate r0, tbl r1
>WHERE r0.id = r1.id
>UNION
>SELECT (r1.id + 2032000) as id, (r0.skachki + r1.skachki) as skachki
>FROM jifecountrate r0, tbl r1
>WHERE r0.id = r1.id
>ORDER BY id DESC;
>
>Мне нужно будет из пяти подобных запросов(здесь два) сделать тоже самое.
>Как UPDATE прикрутить так и не понял ;(
>
>Поможите, чем можите ;(... плиз...


>>>>Не охота посредством ПХП это делать.
Почему нет?
Ну перейди на постгресс - и будет тебе в такого рода задачах счастье.

PS. в mysql  не засунешь твое это выше приведенное...

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "MySQL + PHP. Сложный SQL запрос."
Сообщение от alex_ezh emailИскать по авторуВ закладки(ok) on 25-Ноя-04, 07:30  (MSK)
В том то и дело, что нужно использовать ТОЛЬКО MySQL.
Иначе - ОЧЕНЬ МНОГО надо будет переделывать.

Сейчас попробую закинуть на сайт вот этот вариант.
Вчера ночью придумал:

DELETE FROM tbl;
DELETE FROM jifecountrate;
INSERT INTO jifecountrate
      SELECT RIGHT(id, 3), COUNT(id) as skachki
      FROM rates
      WHERE id like '2031%'
      GROUP BY id;
INSERT INTO jifecountrate
      SELECT RIGHT(id, 3), COUNT(id) as skachki
      FROM rates
      WHERE id like '2032%'
      GROUP BY id;
SELECT id, SUM(skachki) as skachki
FROM jifecountrate
GROUP BY id
ORDER BY skachki DESC;

>PS. в mysql  не засунешь твое это выше приведенное...
У меня стоит программка - и она тот скрипт понимает ;\
Этот, кстати, тоже...
мне этот больше по душе ;) он только одну табличку использует ;)

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру