|
|
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Есть такая задачка : TABLE1 (ID,YEAR,QTY1,..., QTY12) Требуется получить сумму по QTYx за последние 6 месяцев. Из таблицы понятно, что каждая запись содержит год и кол-ва по месяцам. Какие могут быть предложения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:26 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Почему именно такая структура таблицы? Почему не так: TABLE1(ID, Q_DATE, QTM); где Q_DATE это 01.01.2003, 01.02.2003 ... 01.12.2003 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:33 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Потому что данные выводятся в 1 строчку в 12 колонок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:47 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. ?? Но лучше сделайте redesign, как Zmeishe посоветовал. Хранение и представление данных - две разные задачи, не путайте их. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:51 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Все-таки мне кажется надо делать так как сказал Змеище, ну а через хп вводить выводить данные как душе заблагорассудится... Все-таки ввод данных и их хранение разные вещи.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:51 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Да, но только вот не надо забывать о скорости выполнения запросов ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:53 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Dnico Что касается скорости. Например сейчас Март. Вытащить сумму за последние 6 месяцев это: 1. Найти этот год и из этой строки вытащить JAN, FEB 2. Найти предыдущий год и из той строки вытащить DEC, NOV, OCT, SEP. 3. Склеить 1 и 2. "Скоко вешать в граммах???" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 13:59 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Дело еще и в том, что таких вот QTYx - не 12, а 4 по 12, и как вы посоветуете делать SELECT ? Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:03 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Zmeishe , это я уже по поводу изменения структуры ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:08 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
В таком случае сформулируй задачу, которую ты решаешь. Сначала практика затем мат. модель! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:09 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:18 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
OK! Структура данных выше ... Вопрос в том, как удобнее получать сумму по такой вот таблице. Я выбираю текущую запись и беру 6 соответствующих цифорок, но вот когда это делается в начале года, то естественно приходится брать предыдущий год и там добирать остатки. Все это происходит в ХП в FB 1.5. Проблема в том, что получается жуткий код с использованием кучи IF. Так вот может есть какое другое решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:20 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Другое решение - наращивать в таблице строки, а не столбцы. Добавить минимально-необходимое количество столбцов признаков(сигнальных флагов) и изпользовать это в WHERE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:29 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Тогда как решить такую вот ситуацию: Все выводится в DBCONTRLGRID Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:37 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Можно в лоб. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Результат закинь в F1Book с панели ActiveX. Прекрасный компонент, прекрасный Hepl, прекрасно работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:50 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Напиши маленкую процедуру ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:51 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
2 Dnico Используется SQL-92 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:55 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. Sorry ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:57 |
|
||
|
Интересная сумма
|
|||
|---|---|---|---|
|
#18+
Dnico Тебя наверное смутит отсутствие Итого, в приведённом мной коде. F1Book - он как Excel в нужной ячейке укажешь прямо программно F1Book->FormulaRC[Row][Col] = "SUM(C3:N3)"; Он сам всё пересчитает, как только его заполнишь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2003, 14:57 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32250053&tid=1580050]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
55ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 324ms |

| 0 / 0 |
