Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
Субд - postgesql 8.1 (Win) Есть таблица такого вида Статус | Работник | Вид работ 1 1 1 1 2 2 2 1 1 1 1 2 2 2 3 1 1 2 3 2 3 3 1 2 Нужно получить такую таблицу Всего | Вид=1 | Вид=2 | Вид=1 и Раб.=1 8 2 4 1 конструкция Select ( Select .... Select .... ) работает очень медленно, долго обрабатывает (хоть и записей 5000) Подскажите в каком направлении читать, какие функции использовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 11:06 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
читать про индексы, и про Join. И не совсем понятно, что за колонка "Всего" со значением 8 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 12:17 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
2 Автор. У тебя число видов работ ограничено? Если да, то сколько их может быть? Кроме того, куда девается статус? ----------------------------------------------------------------------------------------------------------------------------------------- З.Ы. Неспешно ищу работу, согласен на переезд в Москву или Питер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 12:24 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
Я не спрашиваю зачем это надо - просто отвечаю на вопрос. Пробуй так - в этом случае ты получишь результат за один проход по таблице... Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 12:29 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
domanixЯ не спрашиваю зачем это надо - просто отвечаю на вопрос. Пробуй так - в этом случае ты получишь результат за один проход по таблице... Код: plaintext 1. 2. 3. 4. 5. 6. Вот только может оказаться, что видов работ гораздо больше, чем 3 и все их нужно будет собрать в одну строку... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 13:07 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
Каков вопрос- таков ответ :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 13:26 |
|
||
|
Подскажите как составить запрос
|
|||
|---|---|---|---|
|
#18+
Владимор Конев domanixЯ не спрашиваю зачем это надо - просто отвечаю на вопрос. Пробуй так - в этом случае ты получишь результат за один проход по таблице... Код: plaintext 1. 2. 3. 4. 5. 6. Вот только может оказаться, что видов работ гораздо больше, чем 3 и все их нужно будет собрать в одну строку... Вот для таких вот запросов у себя я написал ряд аггрегирующих функций общим названием Sum_Array(). Смысл в том, что функция по Group BY формирует ARRAY из исходного поля. Тогда запрос выглядит так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Получаем на выходе 2 массива. Правда вопрос, как возвращается массив на клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2006, 13:44 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=33897141&tid=2006182]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
138ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 264ms |
| total: | 516ms |

| 0 / 0 |
