|
|
|
Простейший запрос
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, у меня не получается в PgAdmin III настроить таблицу Данные: Таблица количества kol_vo integer NOT NULL, sklad integer, id_sredtvo_ctrl, и таблица средств контроля id_sredstv_ctrl serial NOT NULL, tip_sredstv_ctrl text, price integer, proizvoditel integer, kol_vo_nalichie integer, колонка kol_vo_nalichie FROM 'таблица средств контроля' есть сумма всех kol_vo FROM 'Таблица количества' по id_sredtvo_ctrl ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 08:42 |
|
||
|
Простейший запрос
|
|||
|---|---|---|---|
|
#18+
Написал запрос SET kol_vo_nalichie = kol_vo WHERE kol_vo = (SELECT sum(kol_vo) FROM kol_vo_na_sklade WHERE id_sredstv_ctrl = id_sredstv_ctrl FROM sredstvo_ctrl) Только не знаю куда его вписывать, при вбити его во вкладку SQL в настройках таблицы/колонки ничего не происходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 10:52 |
|
||
|
Простейший запрос
|
|||
|---|---|---|---|
|
#18+
SamuelWildНаписалпрежде чем препарировать, надо почитать книжки по анатомии, иначе это будет расцениваться как жестокое обращение с трупом. приступать к еще живому телу можно после получения диплома и под присмотром, пока не закончишь ординатуру. в прогпаммировании все проще и пользователям приходится терпеть последствия работы недоучек. читай книжки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:11 |
|
||
|
Простейший запрос
|
|||
|---|---|---|---|
|
#18+
Книжки открывал, ларчик проще открывался, функция UPDATE не может работать с таблицей на которую обращется внутренняя функция, выход подсказали: DO $$ DECLARE r record; BEGIN FOR r IN SELECT id_sredstv_ctrl AS id, SUM(kol_vo) AS cnt FROM kol_vo_na_sklade GROUP BY id_sredstv_ctrl LOOP UPDATE sredstvo_ctrl SET kol_vo_nalicie = r.cnt WHERE id_sredstv_ctrl = r.id; END LOOP; END$$; И запрос подобный можно прописывать один раз, если вписывать в таблицу может произойти коллапс при одновременном изменении данных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 14:49 |
|
||
|
Простейший запрос
|
|||
|---|---|---|---|
|
#18+
У Вас ошибка в проектировании. Поле kol_vo_nalichie необходимо удалить, а сумму считать в запросе и хранить её не надо (это прямо зависимые показатели). В вашем случае наступит момент когда хранимая сумма разойдется с текущей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 15:36 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=39128039&tid=1997570]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
192ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 516ms |

| 0 / 0 |
