Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / # Или как не описавать таблицу, а она что - бы была / 17 сообщений из 17, страница 1 из 1
15.08.2007, 12:50
    #34729113
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Добрый день!

Есть такая конструкция:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select o.Summ, (select idkey
    from Owner.Discounts_Cards
    where BeginDate = (
         select max(BeginDate)
         from Owner.Discounts_Cards 
         where CardHistory_ref = o.CardHistory_ref
          ) 
    AND CardHistory_ref = o.CardHistory_ref
    )
into #tmp_Discounts_Cards /* Временная таблица*/
from #Opers_O o
where (o.Type_ =  163 );

Где создается отмеченная таблица? И вообще где в стандарте можно посмотреть описание этой конструкции?

Заранее благодарен за ответ.
...
Рейтинг: 0 / 0
15.08.2007, 12:58
    #34729152
# Или как не описавать таблицу, а она что - бы была
np9mi7Добрый день!

Есть такая конструкция:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select o.Summ, (select idkey
    from Owner.Discounts_Cards
    where BeginDate = (
         select max(BeginDate)
         from Owner.Discounts_Cards 
         where CardHistory_ref = o.CardHistory_ref
          ) 
    AND CardHistory_ref = o.CardHistory_ref
    )
into #tmp_Discounts_Cards /* Временная таблица*/
from #Opers_O o
where (o.Type_ =  163 );

Где создается отмеченная таблица? И вообще где в стандарте можно посмотреть описание этой конструкции?

Заранее благодарен за ответ.
#Opers_O - это тоже временная таблица. Вы вырвали фрагмент. Перед фрагментом наверняка идет создание этой таблицы . Это все должно быть в одной транзакции
...
Рейтинг: 0 / 0
15.08.2007, 13:52
    #34729389
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Прикол в том, что create table не используется. Минимальный кусок кода:
Код: plaintext
1.
2.
3.
4.
5.
6.
begin
  
  select  1  into #o

  select * from #o

end
, использую Sybase ASA 9.0.2.3320 .
...
Рейтинг: 0 / 0
15.08.2007, 14:05
    #34729448
V.V.L.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Код: plaintext
1.
2.
3.
4.
begin 
...
  select  1  into #o
...
end
Вот тут #o создастся автоматически
Код: plaintext
1.
2.
3.
4.
begin
...
into #tmp_Discounts_Cards /* Временная таблица*/
...
end
Вот тут #tmp_Discounts_Cards создастся автоматически
...
Рейтинг: 0 / 0
15.08.2007, 14:15
    #34729491
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Понятно, а где в стандарте посмотреть?
...
Рейтинг: 0 / 0
15.08.2007, 14:35
    #34729580
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
np9mi7Где создается отмеченная таблица?
Ну, скажем, в tempdb.

np9mi7И вообще где в стандарте можно посмотреть описание этой конструкции?
Посмотреть синтаксис select-а?
В этом случае лучше читать мануалы по конкретному серверу БД в части описания синтаксиса SQL.
...
Рейтинг: 0 / 0
15.08.2007, 14:36
    #34729585
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
np9mi7 wrote:

> Понятно, а где в стандарте посмотреть?

Думаю, нигде. А зачем?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.08.2007, 14:40
    #34729595
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
> Посмотреть синтаксис select-а?

:)

> Думаю, нигде. А зачем?

То есть это не SQL, а ASA - ориентед ? Что бы точно понять - это стандартно или возможность ASA.
...
Рейтинг: 0 / 0
15.08.2007, 14:42
    #34729600
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
np9mi7То есть это не SQL, а ASA - ориентед ?
могли бы просто новый анекдот рассказать.
...
Рейтинг: 0 / 0
15.08.2007, 14:48
    #34729620
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
автормогли бы просто новый анекдот рассказать.

Мне тоже весело, но вот кусок help - а про SELECT statement и конструкцию SELECT INTO:

SELECT

...

[ INTO { hostvar-list | variable-list } ]

...

INTO hostvar-list This clause is used in Embedded SQL only. It specifies where the results of the SELECT statement will go. There must be one host variable item for each item in the select list. Select list items are put into the host variables in order. An indicator host variable is also allowed with each host variable, so the program can tell if the select list item was NULL.

INTO variable-list This clause is used in procedures and triggers only. It specifies where the results of the SELECT statement will go. There must be one variable for each item in the select list. Select list items are put into the variables in order.

А про временные таблицы где?
...
Рейтинг: 0 / 0
15.08.2007, 15:28
    #34729790
Dmitry.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
это transact-sql который ASA поддерживает для совместимости с ASE

http://infocenter.sybase.com/help/topic/com.sybase.help.ase_15.0.commands/html/commands/commands84.htm
...
Рейтинг: 0 / 0
15.08.2007, 15:41
    #34729853
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Спасибо.
...
Рейтинг: 0 / 0
15.08.2007, 16:27
    #34730050
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
np9mi7 пишет:
> Где создается отмеченная таблица? И вообще где в стандарте можно
> посмотреть описание этой конструкции?

В этом запросе и создается. Как результат его выполнения.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
15.08.2007, 18:37
    #34730588
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Сергей Васкецов np9mi7Где создается отмеченная таблица?
Ну, скажем, в tempdb.Это ASA. У ASA нету tempdb :)


np9mi7Мне тоже весело, но вот кусок help - а про SELECT statement и конструкцию SELECT INTO:
SELECT
...
[ INTO { hostvar-list | variable-list } ]
...
А про временные таблицы где?У тебя документация старая. Скорее всего накладывая 9.0.2 патч, ты забыл проинсталлировать идущую отдельным пакетом документацию. На, попробуй выкачать отсюда.
http://origin1.sybase.com/swx/6528/SA902_Documentation_EN.exe
Либо иди нормальным путем как ты ходишь выкачивать EBF'ы там выбери показывать обновления за все месяцы и ищи SQL Anywhere Studio - 9.0.2 Documentation (English)
...
Рейтинг: 0 / 0
15.08.2007, 18:52
    #34730630
np9mi7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
Спасибо за советы где и откуда брать документацию. Только вопрос остался - это стандартное дело или особенности реализации SQL в ASA / ASE ? Если стандартное, то какой стандарт?
...
Рейтинг: 0 / 0
16.08.2007, 00:25
    #34730978
A.K.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
np9mi7Только вопрос остался - это стандартное дело или особенности реализации SQL в ASA / ASE ? Если стандартное, то какой стандарт?
Стандарт я знаю только один - ANSI SQL, разных версий: SQL-89, SQL-92, SQL-95, SQL-99, SQL-2003.

Данная синтаксическая конструкция изначально привнесена в ASA как Transact-SQL extension. Судя по документации на ASA 9.0.2, начиная с этой версии данная синтаксическая конструкция также реализована и в базовом для ASA диалекте Watcom-SQL, причем ее Watcom-реализации позволяет создавать не только временные, но и перманентные таблицы.

PS: Кстати, в старых документациях временные таблицы, создаваемые через SELECT INTO..., также упоминаются, но по указанным выше причинам только в топике Transact-SQL Compatibility -> Writing compatible queries :
ASA SQL User's GuideAdaptive Server Anywhere supports the following subset of the Transact-SQL SELECT statement.

...
Syntax
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT [ ALL | DISTINCT ] select-list
...[ INTO #temporary-table-name ]
...[ FROM table-spec [ HOLDLOCK | NOHOLDLOCK ],
...    table-spec [ HOLDLOCK | NOHOLDLOCK ], ... ]
...[ WHERE search-condition ]
...[ GROUP BY column-name, ... ]
...[ HAVING search-condition ]
   [ ORDER BY { expression | integer }
      [ ASC | DESC ], ... ]
...

Notes
The INTO table_name clause, which creates a new table based on the SELECT statement result set, is supported only for declared temporary tables where the table name starts with a #. Declared temporary tables exist for a single connection only.
...
Рейтинг: 0 / 0
16.08.2007, 09:33
    #34731270
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
# Или как не описавать таблицу, а она что - бы была
White Owl Сергей Васкецов np9mi7Где создается отмеченная таблица?
Ну, скажем, в tempdb.Это ASA. У ASA нету tempdb :)
Я в курсе. Потому "ну" и "скажем". Версия сервера же не указана в корневом топике.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / # Или как не описавать таблицу, а она что - бы была / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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