Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Помогите с запросом / 10 сообщений из 10, страница 1 из 1
15.02.2013, 21:51
    #38153568
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Прошу сильно не пинать
имеется таблица

с полями NAME, FAM,IM,OT
в поле NAME вносится имя организации, а если это физ лицо то поле NAME пусто
то в поле FAM, IM, OT вносится ФИО физ лица

как построить запрос
чтобы при SELECT я получал или имя организации или Фамилия +Имя+Отчество
...
Рейтинг: 0 / 0
15.02.2013, 22:13
    #38153589
knudsen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Chumakov_JA,

SELECT VALUE(NAME,FAM||IM||OT) FROM ....
...
Рейтинг: 0 / 0
15.02.2013, 22:14
    #38153590
knudsen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Chumakov_JA,

пусто = NULL
...
Рейтинг: 0 / 0
15.02.2013, 23:21
    #38153653
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
knudsenChumakov_JA,

пусто = NULL

Спасибо конечно

я это имел виду
...
Рейтинг: 0 / 0
21.02.2013, 16:44
    #38161080
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
knudsenChumakov_JA,

SELECT VALUE(NAME,FAM||IM||OT) FROM ....

А помогите ещё раз

между FAM||IM||OT

нужно пробел вставить


SELECT VALUE(NAME,FAM|' '|IM|' '|OT) FROM .

не помогает пишу на С# VS2010
...
Рейтинг: 0 / 0
21.02.2013, 17:02
    #38161117
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Chumakov_JA,


все сам разобрался

SELECT VALUE(NAME,FAM||' '||IM||' '||OT) FROM ..

помогло
...
Рейтинг: 0 / 0
02.03.2013, 14:50
    #38171964
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Помогите ещё раз

делаю запрос в цыкле

Код: c#
1.
2.
3.
4.
                for (int m = 1; m <= 12; ++m)
                {
                   double days_v_mes = System.DateTime.DaysInMonth(Convert.ToInt16(god_dp.Text), m);
                  string query = "SELECT SUM(SUMA) as suma FROM BAZA WHERE AND ID=" + i + " AND DATA>={d '2012"-" + m + "-01'} AND PAY_ENTER<={d '2012"-" + m + "-" + days_v_mes + "'};";



в результате делаю 12 запросов
при ID=1000
получается 12000 запросов.

как перестроить запрос чтобы сгрупировать данные и получить один ответ с 12 записями
...
Рейтинг: 0 / 0
02.03.2013, 18:57
    #38172083
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Простите немного ошибся



Код: c#
1.
2.
3.
4.
                for (int m = 1; m <= 12; ++m)
                {
                   double days_v_mes = System.DateTime.DaysInMonth(Convert.ToInt16(god_dp.Text), m);
                  string query = "SELECT SUM(SUMA) as suma FROM BAZA WHERE AND ID=" + i + " AND DATA>={d '2012"-" + m + "-01'} AND DATA<={d '2012"-" + m + "-" + days_v_mes + "'};";
...
Рейтинг: 0 / 0
02.03.2013, 19:25
    #38172093
Hunterik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
Что-нибудь вроде этого...

SELECT ID, MONTH(DATA), SUM(SUMA) as summa
FROM BAZA
WHERE ID= i AND DATA between '2012-01-01' and '2012-12-31' -- /* или YEAR(DATA) = 2012 */
GROUP BY ID, MONTH(DATA);

Это, правда, может быть неоптимально. Всё-таки вызов функций.
См. планы запросов. Думайте над дизайном таблицы.
DB2 v9.7.
...
Рейтинг: 0 / 0
02.03.2013, 20:37
    #38172129
Chumakov_JA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с запросом
HunterikЧто-нибудь вроде этого...

SELECT ID, MONTH(DATA), SUM(SUMA) as summa
FROM BAZA
WHERE ID= i AND DATA between '2012-01-01' and '2012-12-31' -- /* или YEAR(DATA) = 2012 */
GROUP BY ID, MONTH(DATA);

Это, правда, может быть неоптимально. Всё-таки вызов функций.
См. планы запросов. Думайте над дизайном таблицы.
DB2 v9.7.

А можно поконкретней с концовкой


WHERE ID= i AND DATA >={d '" + god3.Text + "-01-01'} AND DATA<={d '" + god3.Text + "-12-31'}
GROUP BY MONTH(DATA)

так работает

а вот как нужно с YEAR(DATA) = god3.Text
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Помогите с запросом / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]