Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Union All и Top в запросе  [new]
TatianaT
Member

Откуда:
Сообщений: 1356
Всем привет!


возможно ли обойтись 1 запросом чтобы получить 3 записи из запроса с параметром,
содержащий Union All ?
запрос:

SELECT top 3 Q_CreateTaba3Int.* FROM Q_CreateTaba3Int;
тело Q_CreateTaba3Int:

PARAMETERS [TabaID] Long;
SELECT TB_TabaInt.TabaIntID, TB_TabaInt.TabaID, TB_TabaInt.IntTypeID, TB_TabaInt.OrderID, TBT26_PeopleOfIntType.IntTypeDesc, TB_TabaInt.IsLeader, TB_PeopleOfInt.FullName, TB_PeopleOfInt.Address, TB_PeopleOfInt.IdNumber, TB_PeopleOfInt.Tel1 FROM (TB_TabaInt LEFT JOIN TBT26_PeopleOfIntType ON TB_TabaInt.IntTypeID = TBT26_PeopleOfIntType.IntTypeID) LEFT JOIN TB_PeopleOfInt ON TB_TabaInt.ContactID = TB_PeopleOfInt.ContactID WHERE (TB_TabaInt.TabaID)=[TabaID]
UNION ALL
SELECT TB_TabaObjectionInt.TabaObjectionIntID AS TabaIntID, TB_TabaObjectionInt.TabaID, TB_TabaObjectionInt.IntTypeID, TB_TabaObjectionInt.OrderID, TBT26_PeopleOfIntType.IntTypeDesc, TB_TabaObjectionInt.IsLeader, TB_PeopleOfInt.FullName, TB_PeopleOfInt.Address, TB_PeopleOfInt.IdNumber, TB_PeopleOfInt.Tel1 FROM (TB_PeopleOfInt RIGHT JOIN TB_TabaObjectionInt ON TB_PeopleOfInt.ContactID = TB_TabaObjectionInt.ContactID) LEFT JOIN TBT26_PeopleOfIntType ON TB_TabaObjectionInt.IntTypeID = TBT26_PeopleOfIntType.IntTypeID WHERE (TB_TabaObjectionInt.TabaID)=[TabaID]
ORDER BY TB_TabaInt.IntTypeID, TB_TabaInt.OrderID;
17 дек 06, 12:06    [3546973]     Ответить | Цитировать Сообщить модератору
 Re: Union All и Top в запросе  [new]
adv
Member

Откуда:
Сообщений: 3333
Вряд ли.

Одним запросом можно попробовать записать:

PARAMETERS [TabaID] Long;

SELECT top 3 Q_CreateTaba3Int.* FROM (select ... union all select ...) Q_CreateTaba3Int;
но суть не изменится.
17 дек 06, 12:29    [3546994]     Ответить | Цитировать Сообщить модератору
 Re: Union All и Top в запросе  [new]
TatianaT
Member

Откуда:
Сообщений: 1356
Спасибо!!!

таки да, ты прав , так получилось, только ты "as" потерял,

а я без "алиаса", просто через звёздочку писала поэтому и не работал запрос
17 дек 06, 14:04    [3547112]     Ответить | Цитировать Сообщить модератору
 "А ведь этот шнурок очень кому-то нужен" :)  [new]
adv
Member

Откуда:
Сообщений: 3333
TatianaT
только ты "as" потерял,



Где?

вроде не терял.
17 дек 06, 14:11    [3547116]     Ответить | Цитировать Сообщить модератору
 Re: Union All и Top в запросе  [new]
TatianaT
Member

Откуда:
Сообщений: 1356
PARAMETERS [TabaID] Long;

SELECT top 3 Q_CreateTaba3Int.* FROM (select ... union all select ...) as Q_CreateTaba3Int;


а я без "алиаса", просто через звёздочку писала
PARAMETERS [TabaID] Long;
SELECT top 3 * FROM (select ... union all select ...) про алиас не додумалась и разбила на 2 запроса
17 дек 06, 14:23    [3547131]     Ответить | Цитировать Сообщить модератору
 Re: Union All и Top в запросе  [new]
adv
Member

Откуда:
Сообщений: 3333
[quot TatianaT](select ... union all select ...) as Q_CreateTaba3Int;

Никогда здесь не пишу - затрудняет чтение.
17 дек 06, 14:31    [3547137]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить