|
|
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Есть таблица. В ней первых да столбца - известны, остальные - добавляются каждый день и содержат в своем названии дату: TEST(id number, name char, g11_04_03, g12_04_03, и пр.) Необходимо сделать запрос, который возвращал бы значения одного из столбцов с датой в названии. Я пишу: Код: plaintext 1. 2. Возвращает мне, разумеется, g23_04_03 в каждой строке. Подскажите, если знаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 12:51 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
А таблицу перепроектировать не думали? Может что-то в университете не так? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 12:57 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Тогда она разрастется до размеров вселенской катастрофы ((( ЗЫ. Но уже думаем... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 12:59 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Класс :)) а зачем так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 12:59 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
А количество столбцов в Оракле разве не ограничено? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:04 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Что зачем? Зачем вообще все это нужно? Начальство сказало что барсук - птица, значит полетит... Я подсчитала. С другой структурой эта таблица за 10 дней станет размером 7500000 записей. Эээх... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:06 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
А если партиции пользовать, либо на худой конец новые таблы создавать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:11 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
ORA -01792 maximum number of column in table or view is 1000. После 1000 ты что делать будешь?. Думать начнешь ? Ты скажи какая у тебя задача. Народ подумает и придумает как сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:11 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Оригинальное решение! А если так редизайнить? Код: plaintext 1. 2. 3. 4. 5. 6. ну итп.? Не уже ли, это решение хуже чем добавление столбцов каждый день? Вообще вроде добавление столбцов когда уже много данных вроде как "портит" базу помаленьку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:12 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Во-первых, тут всяко через динамический SQL придется идти. Вопрос- в каком виде надо получить данные: refcursor, resultset, еще как? А 7500000 записей- подумаешь, а сколько из них отбираться будут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:13 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Ну если очень хочется то нужно почитать доку про NATIVE DYNAMIC SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:14 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
У меня нет доки по NATIVE DYNAMIC SQL и не предвидится ( Отбирать буду из 7,5 млн записей примерно в пять раз меньше. (может больше, чем в пять раз меньше) А про кол-во столбцов спасибо, не знала. Вывалилась бы ошибка на самом интересном месте ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:18 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Aphina . Если ты хочешь грамотно воспользоваться умом и опытом других людей, то все-таки объясни задачу! Ты почему это упорно не хочешь делать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:23 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
В одной табличке данные каждый день разные. И нач-во хочет видеть отчет по этим данным за любой день, который захочет. Поэтому я записываю эти данные в табличку, для этого добавляя каждый день по столбцу с датой в названии. Конечным результатом должен быть запрос по этой табличке, выводящий данные за дату. Есть еще вариант - считать это значение. Брать несколько таблиц и считать, сколько убыло и сколько прибыло на определенную дату. Долго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:24 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
1. ИМХО можно подумать о партициях. 2. Materialized View c Fast Refresh - в конце дня единожды обновляется. Это если получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:30 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Значит, отменили where в запросах начальственным приказом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:30 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
2Aphina: Ничего не долго. Индекс тебя спасёт. Секционирование, опять же. Изменять структуру таблицы "на лету" категорически не надо. Иначе - мучительная смерть (см. /topic/29628, подробности можно адаптировать в зависимости от пола) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:31 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
А бывает и наоборот: В таблице хранятся данные о 10 сотрудниках: 10 столбцов, 20 строк. Вот придет еще один, надо будет столбец добавлять, а как иначе ? 2 Aphina Может все же поделишься структурой данных и требуемыми отчетами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:32 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Тогда вам нужно почитать фундаментальную литературу - про методы декомпозиции, типа метод ER-диаграмм. Ваша таблица похожа на универсальное отношение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:32 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Ты:В одной табличке данные каждый день разные. Я: ну и добавь туда поле SYS_DATE и получиться что у тебя и данные всегда разные. И история есть select * from TEST where SYS_DATE = to_date('01/01/2002','dd/mm/yyy') ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:38 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Абалдеть... Киньте наконец ссылку, где почитать про NATIVE DYNAMIC SQL и "методы декомпозиции" Задача. Есть в магазине большое (50 тыс шт.) кол-во единиц продукции. По каждому из них есть в табличке остатков своя цифирька - текущий остаток на данный момент времени. Эта цифра меняется, когда приходят накладные (то прибавляем), когда возвращается товар поставщику (тогда вычитаем), когда удалось продать (вычитаем) и когда покупатель это вернул (снова прибавляем). И получем эту цифирьку. Для того, чтоб узнать циыирьку на какое-нить давнишнее число нужно прибавить и отнять все эти документы, начиная с текущей даты по заданную. Запросом - долго... Т.к. это только часть здорового запроса, а таких должно быть два (остаток на начало и на конец заданного периода), то время еще увеличивается в разы. Ну, УМЫ, что подскажете? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:40 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Native Dynamic SQL: http://technet.oracle.com/docs/products/oracle9i/doc_library/release2/appdev.920/a96624/11_dynam.htm#4376 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:42 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
1. Да, кстати, таблицы МЕНЯТЬ я не имею права, не мои они. Хоть и могу поменять, и руки чешутся. 2. Разработчики всей этой красоты, по которой нужно делать отчет, сделали в самых больших таблицах индексы по текстовым полям... Чего то я в этой жизни явно не понимаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:43 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Задача твоя довольна стандартная. Пример такой же задачи - остаток по счету клиента. Есть еще к тебе пару вопросов. Возможно ли обновление этого остатка с нескольких рабочих мест? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:48 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Решение в лоб. Абстрактно таблицы: Документ (..., дата, ид_товара, знак, кол-во, ...) Остаток(ид_товара, дата, кол-во) Соответственно, в таблицу документов вставляются документы. По триггерам на вставку, обновление, удаление обновляются остатки в таблице остатков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:49 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Пузырек: Конечно возможно. Несколько пользователей заводят приходные накладные, остаток товара на складе тут же меняется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:50 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Ангел, ты абсолютно прав. Именно так все и происходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:52 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
2 Angel. Как быть в такой ситуации 1) Пользователь добавил документ. Пошел в тригерах значит Updaet на остаток. Пользователь изменения еще не закоммител. 2 ) Пользователь 2 вставляет тот же товар. Он будет ждать когда первый нажмет коммит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:53 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Пузырек, проблема не в этом. Все отлажено и давным давно работает. И корректно считается. Сначала один пользователь, потом другой. Не нужно это обсуждать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 13:57 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Это тебе кажеться, что работает. Мы то это уже проходили. При интенсивном update система повиснет. Или потом он сходиться не будет с остатками посчитанными по документу. Будут "оторванные" документы появляться. Я на обед сейчас пойду. Приду напишу как я вижу решение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:05 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Накладные печатают несколько операторов. Потом их ПО ОЧЕРЕДИ принимает старший оператор (тогда тригер и срабатывает). Здесь не может быть глюка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:11 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
"Есть таблица. В ней первых да столбца - известны, остальные - добавляются каждый день и " Дебилизм. Как только народ в обсуждение этого втягивается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:13 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Я так понял что твоя основаная проблема в том, что тебе надо получать отчет по движению товаров за интервал времени, а он отрабатывает ну очень долго..... Я эту задачу решил в свое время так. Создается таблица <код товара> <дата остатка> <дата следующего движения> <остаток> в которую вносятся остатки для товаров по которым было движение за текущую дату при этом для последнего движения товара <дата следующего движения> = '01-01-2999' Дополняешь ты ее по концу рабочего дня. соответственно остаток на дату Код: plaintext 1. 2. 3. Вообще конечно целезообразней хранить не только остаток, но и сумму по приходу и расходу за день, тогда имеет смысл еще добавить поле <дата предидущего движения> соответственно для первого движения по товару это '01-01-1900' , но вообщем сам смысл не меняется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:36 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
To softbuilder@inbox.ru а разве тебе не приходилось решать подобную задачу которая стоит перед Aphina ? Я имею ввиду сохранение проводок, баланса, и потом построение по ним отчетов. А не добовление колонок, про колонки это точно бред... Но задача та в другом )). Если делать как большинство а именно: Баланс дата - счет - остаток Проводки дата - счет - сумма то для построение отчета движения за период с Дата по Дата вида Начало Приход Расход Конец счет сумма сумма сумма сумма Люди строят сумашедшие запросы Я вот видел массу решений и в банках и больших торговых компаниях, Которое я предложил самое удачно которое я видел... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:45 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
2 softbuilder@inbox.ru . Людям помогать надо 2 Dick Gonsales. Согласен с тобой. Какая у Вас АБС стоит если не секрет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:57 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Спасибо за спокойный мудрый совет! Вот что значит опыт. Так и сделаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 14:58 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Я конечно жутко извиняюсь, но что значит АБС? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:09 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
..н-да, посоветуй рук-ву переход на 1С 7.7 на бд mssql7 обьемы операций по 50000 тов. позиций там решаются довольно легко -- а программеров таких ораклевых посадить в виде наказания на кодирование на русском языке в среде 1С :) -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:16 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
Ладно. Не буду портить настроение ВЕЛИКИМ ОРАКЛОИДАМ. На мой вопрос мне ответили. Всем пока! Ответившим - спасибо!! А Пузырьку вдвойне спасибо - за заботу и понимание ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:24 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
.. жаль ..сабж смешной только без обид - ладно ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 15:40 |
|
||
|
Запрос по неизвестному столбцу
|
|||
|---|---|---|---|
|
#18+
АБС - анти-блокировочная система полезная вещь по жизни. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.04.2003, 16:21 |
|
||
|
|

start [/forum/topic.php?all=1&fid=52&tid=1990803]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
179ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
89ms |
get tp. blocked users: |
1ms |
| others: | 276ms |
| total: | 587ms |

| 0 / 0 |
