Чаще всего используется при получении виртуальных таблиц остатков и оборотов, чтобы скрыть NULL и поставить понятный 0 ноль.

Вставить результаты хранимой процедуры во временную таблицу
Select все данные BusinessLine в в tmpBusLine работает нормально.
Я пытаюсь то же самое, но использование, stored procedure которое возвращает данные, не совсем то же самое.
Сообщение 156, уровень 15, состояние 1, строка 2 Неверный синтаксис рядом с ключевым словом «exec».
Я прочитал несколько примеров создания временной таблицы с той же структурой, что и для хранимой процедуры вывода, которая прекрасно работает, но было бы неплохо не указывать столбцы.
С помощью SELECT * INTO [TABLE NAME] вы узнаете столбцы, так как они скопированы из исходной таблицы. Это именно то, что я хочу, если бы я делал то же самое с хранимой процедурой.
Просто хочу указать, что «select * into tmpBusLine» создает постоянную таблицу. Вы, вероятно, хотите «выбрать * в #tmpBusLine». Я уверен, что оригинальный постер уже узнал об этом, но это может помочь другим, которые находят это сообщение, так как это лучший результат в настоящее время для поиска «выберите в таблице временных параметров»
Я не знаю, была ли это решена, но причина, по которой вы получаете ошибку, связана с ключевым словом from.
Вы можете использовать OPENROWSET для этого. Посмотри. Я также включил код sp_configure для включения специальных распределенных запросов, если он еще не включен.
Это правильный способ сделать это. OPENROWSET — практически единственный способ обработать результаты хранимой процедуры как табличное выражение.
Вам не нужен связанный сервер, но вам нужно правильно указать строку подключения . а также указать полный путь к хранимой процедуре, включая имя базы данных и владельца sp.
eeeeew! ссылка на тот же сервер? противно. определенно больше хак, чем необходимость вручную создавать временную таблицу
Я согласен, что это взлом, и, вероятно, его следует избегать, если только вы не прислонились к стене. Изменение sp на функцию, вероятно, является лучшим углом. ИМХО.
Если вы хотите сделать это без предварительного объявления временной таблицы, вы можете попытаться создать пользовательскую функцию, а не хранимую процедуру, и заставить эту пользовательскую функцию возвращать таблицу. В качестве альтернативы, если вы хотите использовать хранимую процедуру, попробуйте что-то вроде этого:
Мне было бы интересно узнать, в чем разница между этим решением @Aaron Alton и выше. Этот кажется гораздо проще, но я не уверен в любых других последствиях.
Это будет работать, но если вы когда-нибудь добавите дополнительные столбцы в хранимую процедуру SpGetRecords, это взорвется.
Вы получаете только один INSERT INTO EXEC на стек вызовов. SpGetRecords и любой другой вызываемый им процесс не могут использовать эту стратегию в своем собственном коде. Это может удивить сопровождающих SpGetRecords.
Промокоды на Займер на скидки
Это не отвечает на вопрос вообще, и я не понимаю, почему это так проголосовало? В OP явно указано «без определения [временная таблица]», и в самой первой строке есть оператор создания временной таблицы.
Как посмотреть результат запроса 1с в отладчике
Стандартную консоль запросов можно найти на дисках ИТС это внешняя обработка , да и на просторах интернета целая куча различных ее модификаций.

1C Исключить из Запроса Результат Временной Таблицы
Основные приемы работы с запросами во встроенном языке 1С:Предприятия удобнее всего рассматривать на примерах. Приведем типичный пример использования запроса:
// Выполним запрос и запишем результат в переменную РезультатЗапроса.
РезультатЗапроса = Запрос . Выполнить ( ) ;
// Получим выборку из результата запроса.
Выборка = РезультатЗапроса . Выбрать ( ) ;
Как видно из этого примера, работа с запросом ведется при помощи трех основных объектов:
- Запрос – объект, выполняющий сам запрос. Представлен в примере переменной с именем Запрос.
- РезультатЗапроса – объект, содержащий полученные при выполнении запроса данные. Представлен в примере переменной с именем РезультатЗапроса. – объект, позволяющий обходить (т.е. перебрать) записи из результата. Представлен в примере переменной с именем Выборка.
Рассмотрим подробнее объект ВыборкаИзРезультатаЗапроса. Для этого нам понадобится следующий текст запроса:
ВЫБРАТЬ
Товар, Количество
ИЗ
Документ.РасхНакл.Состав
УПОРЯДОЧИТЬ ПО Товар
ИТОГИ Сумма(Количество) ПО Товар Иерархия
В эту таблицу добавлена колонка «N», которой нет в результате запроса, но которая будет использоваться нами в дальнейшем для идентификации записи в результате. Итоговые записи в таблице выделены курсивом, итоговые записи для иерархических уровней справочника выделены жирным шрифтом.
Способы обхода результата запроса
Линейный обход результата
Первый, и самый простой способ обхода – линейный. При линейном обходе выборка будет выдавать записи в той последовательности, в которой они располагаются в результате запроса. В нашем примере это будут записи с номерами 1, 2, 3, 4, 5 и так далее до записи с номером 20.
Для получения линейной выборки из результата необходимо вызвать метод Выбрать объекта РезультатЗапроса без параметров, либо с параметром ОбходРезультатаЗапроса.Прямой.
СпособВыборки = ОбходРезультатаЗапроса . Прямой ; Выборка1 = РезультатЗапроса . Выбрать ( СпособВыборки ) ; // что равнозначно записи Выборка1 = РезультатЗапроса . Выбрать ( ) ; |
Иерархический обход результата
Следующий способ обхода результата – иерархический. При данном обходе обходятся только записи, находящиеся на одном уровне. Для получения иерархической выборки из результата необходимо вызвать метод Выбрать() объекта РезультатЗапроса с параметром ОбходРезультатаЗапроса.ПоГруппировкамСИерархией.
СпособВыборки = ОбходРезультатаЗапроса . ПоГруппировкамСИерархией ; Выборка2 = РезультатЗапроса . Выбрать ( СпособВыборки ) ; |
Выборка из результата с иерархическим обходом в нашем примере обойдет только записи с номерами 1 и 11, так как только эти две записи находятся на самом верхнем уровне. Проиллюстрируем это, представив наш результат в виде дерева, где узлами будут итоговые записи, а листьями дерева будут детальные записи. Вот что у нас получится:
СпособВыборки = ОбходРезультатаЗапроса . Прямой ; Выборка1 = РезультатЗапроса . Выбрать ( СпособВыборки ) ; // что равнозначно записи Выборка1 = РезультатЗапроса . Выбрать ( ) ; |
1С запрос убрать пустые значения
- – перейти к следующей записи результата в соответствии с порядком обхода выборки. При первом вызове позиционирует выборку на первую запись. Когда будут выбраны все записи, данный метод просигнализирует об этом, вернув значение Ложь. – получить следующую запись со значением в заданном поле, отличающимся от значения в этом поле текущей записи. – найти запись, с заданными значениями некоторых полей.
Хранимая процедура просто передает параметры, когда она вызывает select из встроенной пользовательской функции с табличным значением.

Временные таблицы
— это объект базы данных, который хранится и управляется системой базы данных на временной основе. Временные таблицы могут быть локальными или глобальными. Локальные временные таблицы представлены физически, т.е. они хранятся в системной базе данных tempdb. Имена временных таблиц начинаются с префикса #, например #table_name.
Временная таблица принадлежит создавшему ее сеансу, и видима только этому сеансу. Временная таблица удаляется по завершению создавшего ее сеанса. (Также локальная временная таблица, определенная в хранимой процедуре, удаляется по завершению выполнения этой процедуры.)
Два этих подхода похожи в том, что в обоих создается локальная временная таблица #project_temp. При этом таблица, созданная инструкцией CREATE TABLE, остается пустой, а созданная инструкцией SELECT заполняется данными из таблицы Project.
Построение запросов к базе на 1С Предприятие 8.3 — DisWEB
Временные таблицы
— это объект базы данных, который хранится и управляется системой базы данных на временной основе. Временные таблицы могут быть локальными или глобальными. Локальные временные таблицы представлены физически, т.е. они хранятся в системной базе данных tempdb. Имена временных таблиц начинаются с префикса #, например #table_name.
Временная таблица принадлежит создавшему ее сеансу, и видима только этому сеансу. Временная таблица удаляется по завершению создавшего ее сеанса. (Также локальная временная таблица, определенная в хранимой процедуре, удаляется по завершению выполнения этой процедуры.)
Два этих подхода похожи в том, что в обоих создается локальная временная таблица #project_temp. При этом таблица, созданная инструкцией CREATE TABLE, остается пустой, а созданная инструкцией SELECT заполняется данными из таблицы Project.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы