Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Изменить формат полей в запросе / 10 сообщений из 10, страница 1 из 1
27.01.2020, 11:41
    #39919009
_s_e_r_g_e_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
Добрый день, коллеги

Подскажите пожалуйста, как можно в запросе с UNION изменить формат полей при выводе запроса?
Дело в том, что с UNION нет возможности зайти в конструктор и вызвать свойство поля и в окне свойств изменить формат поля.

Спасибо.
...
Рейтинг: 0 / 0
27.01.2020, 11:59
    #39919013
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
_s_e_r_g_e_,
А что мешает изменить формат поля в объединяемых запросах?
...
Рейтинг: 0 / 0
27.01.2020, 12:07
    #39919017
_s_e_r_g_e_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
не очень понимаю , как это сделать. Это один запрос

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SELECT IIF( a.item is null, b.item,a.item) as item, IIF( a.country is null, b.country,a.country) as country, IIF( a.loc is null, b.loc,a.loc) as loc, IIF( a.week_ is null, b.week_,a.week_) as week,
IIF( a.year_ is null, b.year_,a.year_) as year, a.SumOfQTY as forecast,  b.SumOfQTY as order_, (select  sku from spr_sku where IIF( a.item is null, b.item,a.item) =spr_sku.item) as sku,
(select  category from spr_sku where IIF( a.item is null, b.item,a.item) =spr_sku.item) as category, (select DMR from spr_sku where IIF( a.item is null, b.item,a.item) =spr_sku.item) as DMR,
(SELECT  flag  from uniq_sku WHERE IIF( a.country is null, b.country,a.country) = uniq_sku.country  AND  IIF( a.item is null, b.item,a.item) = uniq_sku.item)  as flag
FROM FCST_ a LEFT JOIN ORDERS_ b ON (a.year_ = b.[year_]) AND (a.week_ = b.[week_]) AND (a.Loc = b.loc) AND (a.item = b.item) AND (a.country = b.country);

UNION

SELECT IIF( a.item is null, b.item,a.item)  as item,IIF( a.country is null, b.country,a.country) as country, IIF( a.loc is null, b.loc,a.loc) as loc, IIF( a.week_ is null, b.week_,a.week_) as week,
IIF( a.year_ is null, b.year_,a.year_) as year, a.SumOfQTY as forecast,  b.SumOfQTY as order_, (select  sku from spr_sku where IIF( a.item is null, b.item,a.item) =spr_sku.item) as sku,
(SELECT  category from spr_sku WHERE IIF( a.item is null, b.item,a.item) =spr_sku.item) as category, (select DMR from spr_sku where IIF( a.item is null, b.item,a.item) =spr_sku.item) as DMR,
(SELECT flag  from uniq_sku WHERE IIF( a.country is null, b.country,a.country) = uniq_sku.country  AND  IIF( a.item is null, b.item,a.item) = uniq_sku.item) as flag
FROM FCST_  a RIGHT JOIN ORDERS_  b ON (a.year_ = b.[year_]) AND (a.week_ = b.[week_]) AND (a.Loc = b.loc) AND (a.item = b.item) AND (a.country = b.country);



значения логического поля выводятся, как пусто или -1, а мне нужно , чтобы выводилось истина или ложь.

два запроса не хочу создавать, так как во-первых не хочу плодить промежуточные запросы (запросв очень много в базе и можно запутаться), во-вторых если нужно что-то модернизировать , то ее нужно выполнять во всех связанных запросах, что не очень удобно.
...
Рейтинг: 0 / 0
27.01.2020, 12:23
    #39919023
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
_s_e_r_g_e_, если совсем просто, то используй свой запрос на объединение как источник для другого запроса, а там уже поменяй формат в конструкторе.
...
Рейтинг: 0 / 0
27.01.2020, 12:33
    #39919031
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
_s_e_r_g_e_
...Это один запрос...
чо правда? и не ругается что обнаружены какие-то знаки после запроса?
...
Рейтинг: 0 / 0
27.01.2020, 12:33
    #39919032
Изменить формат полей в запросе
_s_e_r_g_e_, а зачем вам это именно в запросе? Где вы его используете?
И что именно вас интересует (тип значения, знаки после запятой, выравнивание и т.д.)?

Но если очень надо - создайте новый запрос, источником которого ваш сохраненный UNION. Там, в конструкторе, и указывайте формат.
...
Рейтинг: 0 / 0
27.01.2020, 12:35
    #39919034
_s_e_r_g_e_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
автор_s_e_r_g_e_, если совсем просто, то используй свой запрос на объединение как источник для другого запроса, а там уже поменяй формат в конструкторе.

Я написал выше , что не хочу плодить запросы.

Вот , какая идея родилась - использовать FORMAT. В общем разобрался. Спасибо

Код: sql
1.
SELECT  format(flag , "True/False")
...
Рейтинг: 0 / 0
27.01.2020, 12:39
    #39919036
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
_s_e_r_g_e_
Я написал выше , что не хочу плодить запросы.
Странная постановка...
Так будет один.
Код: sql
1.
2.
3.
4.
5.
6.
SELECT q.item, ...
FROM (
SELECT NZ( a.item, b.item) as item, ...
UNION
SELECT NZ( a.item, b.item) as item,,... 
) as q
...
Рейтинг: 0 / 0
27.01.2020, 12:45
    #39919043
Изменить формат полей в запросе
А, увидел..
_s_e_r_g_e_
значения логического поля выводятся, как пусто или -1, а мне нужно , чтобы выводилось истина или ложь.

Можно в каждой секции написать так:
Код: vbnet
1.
IIF((SELECT  flag  from uniq_sku WHERE IIF( a.country is null, b.country,a.country) = uniq_sku.country  AND  IIF( a.item is null, b.item,a.item) = uniq_sku.item) <>0, "Истина", "Ложь")  as flag

Ну, или Format вместо IIF, но тогда "пусто" (т.е. Null) так и будет пусто, а не "ложь".

Но на вопрос ответьте - зачем вам это именно в запросе? Где вы его используете?
...
Рейтинг: 0 / 0
27.01.2020, 15:29
    #39919115
_s_e_r_g_e_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Изменить формат полей в запросе
Результат запроса выдергиваю в Эксель и для того, чтобы не делать ручное форматирование в экселе хотел, чтобы уже получался необходимый формат.
Больше автоматизации - меньше ручных операций :)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Изменить формат полей в запросе / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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