powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Передача одного параметра а возврат таблицы
20 сообщений из 20, страница 1 из 1
Передача одного параметра а возврат таблицы
    #38722249
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня.

Таблица: (Request)
Код: sql
1.
2.
3.
4.
5.
6.
ID | Data       | XML 
1  | 2014-08-16 | <?xml version="1.0"
2  | 2014-08-16 | <?xml version="1.0"
3  | 2014-08-17 | <?xml version="1.0"
4  | 2014-08-17 | <?xml version="1.0"
5  | 2014-08-18 | <?xml version="1.0"


Есть запрос который по ID из данной таблицы вытаскивает из поля XML все необходимые данные.
Код: sql
1.
SELECT Id, dbo.mGetKolSd(Id) AS KolichestvoSD INTO #ColTableTemp FROM Request WHERE Id=@Id 


Дальше идет разбор полученных данных, и после разбора, данные возвращаются в виде таблицы, количество столбцов всегда 3, а количество строчек меняется.
Код: sql
1.
2.
3.
4.
5.
INSERT INTO #TempTable (Id,Cred,Treb) SELECT
		Id
		,dbo.mGetNum(Id,1)
		,dbo.mGetSdel(Id,1)
		FROM #СolTableTemp


Для выполнения запроса, нужно переменной @Id присвоить значение Id из таблицы, только одно значение !!! (если присвоить интервал значений ID, работать не будет!)

Задача: Нужно передавать в запрос ID из таблицы Request, не по одному значению, а по дате, за период?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722253
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_Aleksнужно переменной @Id присвоить значение Id из таблицы, только одно значение !!! (если присвоить интервал значений ID, работать не будет!)
Переменной НЕвозможно присвоить интервал значений.
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722268
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Glory,

Задача: Нужно передавать в запрос ID, из таблицы Request.

Не нужно переменной присваивать значения, нужно что бы в мой запрос, передавались ID, из таблицы в цикле.

т.е. таблица Request, выполнил запрос: SELECT * FROM Request WHERE Data >= '2014-08-18'

Код: sql
1.
2.
--Результат:
5  | 2014-08-18 | <?xml version="1.0"


но в этом запросе SELECT * FROM Request WHERE Data >= '2014-08-18' - нужно вызвать ЗАПРОС для разбора XML, и результате получится.
Код: sql
1.
2.
3.
4.
5.
--Результат: (примерно)
5  | 1315361      | Нет
5  | 2М31         | Да
5  | 201412       | Нет
5  | 208-18       | Да
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722271
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksНе нужно переменной присваивать значения, нужно что бы в мой запрос, передавались ID, из таблицы в цикле.
Ну так передавайте. В чем конкретная проблема ?
Вы опять не можете найти в хелпе пример с циклом ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722273
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще лучше найдите в хелпе примеры OUTER APPLY и напишите один запрос
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722297
mrGuest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Aleks_Aleksно в этом запросе SELECT * FROM Request WHERE Data >= '2014-08-18' - нужно вызвать ЗАПРОС для разбора XML, и результате

Ну так и вызывайте раз нужно:
SELECT * FROM Request outer apply ( ЗАПРОС ) as F(...) WHERE Data >= '2014-08-18'
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722555
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mrGuest,

на месте ( ЗАПРОС ), нужно вставить запрос, или можно вызвать процедуру, или только функцию ?

Что значит F(...) - ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722794
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Написал запрос как советовали:
Код: sql
1.
SELECT R.Id, ST.Id, ST.Cred, ST.Treb FROM Request AS R OUTER APPLY dbo.mGetProced(R.Id) AS ST WHERE R.tId = @RequestId;

ругается, что данной процедуры нет. Почему ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722799
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksНаписал запрос как советовали:
Советовали ЗАПРОС
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722834
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Glory,

Тот запрос, с переменными, функциями и 30-ю инсертами

как его вставить в этот запрос ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722843
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksТот запрос, с переменными, функциями и 30-ю инсертами
Запрос не может состоять из 30 инсертов
Потому что каждый инсерт есть отдельный запрос.
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722849
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksНе нужно переменной присваивать значения, нужно что бы в мой запрос, передавались ID, из таблицы в циклеAleks_AleksТот запрос, с переменными, функциями и 30-ю инсертамиу вас объект dbo.mGetProced() называется запрос?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722873
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shakill,

На вопрос, "Как передать одно значение и получить таблицу", был получен ответ:
Код: sql
1.
SELECT * FROM Request outer apply (ЗАПРОС) as F(...) WHERE Data >= '2014-08-18'


На вопрос, "Как в предыдущий запрос вставить SQL-код разбирающий xml" - ответа не было.

В хелп был пример:
Код: sql
1.
2.
3.
4.
SELECT D.deptid, D.deptname, D.deptmgrid
    ,ST.empid, ST.empname, ST.mgrid
FROM Departments AS D
    CROSS APPLY fn_getsubtree(D.deptmgrid) AS ST;


SQL-код - вызывался как функция.

Вопрос: как в запросе (первый с верху) вызвать SQL-код разбирающий xml ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38722881
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksВопрос: как в запросе (первый с верху) вызвать SQL-код разбирающий xml ?
Наверное оформить его как функцию ? чтобы можно было сделать вызов как в хелпе ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723152
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Glory,

Это было бы хорошо)

Я вот только не знаю, как ?

Как запихнуть SQL-код разбирающий xml, с двумя переменными, с двумя временными таблицами, с двумя вызываемыми функциями, с 30-ю инсертами во временные таблицы - в функцию !?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723192
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksКак запихнуть SQL-код разбирающий xml, с двумя переменными, с двумя временными таблицами, с двумя вызываемыми функциями, с 30-ю инсертами во временные таблицы - в функцию !?
Руками. Прочитав предварительно в хелпе про CREATE FUNCTION

ЗЫ
Нафига делать "30- инсертов во временные таблицы" для разбора xml ?
Нехватает документированных методов работы с xml ?
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723239
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GloryРуками. Прочитав предварительно в хелпе про CREATE FUNCTION
Читал, может не внимательно. В функции был один зпрос, про инсерт, временную таблицу - там ни чего не сказано.

GloryЗЫ
Нафига делать "30- инсертов во временные таблицы" для разбора xml ?
Нехватает документированных методов работы с xml ?
Вы не видели этот xml, и не видели какие требования предъявили по извлечению данных.

В картинке ниже, показано, как реагирует создаваемая функция, на добавление кода для разбора xml:
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723245
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_AleksВ картинке ниже, показано, как реагирует создаваемая функция, на добавление кода для разбора xml:
На картинке видно полное игнорирование вами хелпа.

Aleks_AleksВы не видели этот xml, и не видели какие требования предъявили по извлечению данных.
Видел. Я же считал содержимое файла и требования прямо из вашего мозга.
Также я увидел у вас в мозгу полное отсутствие информации о методах работы с xml в MSSQL.
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723302
Aleks_Aleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Aleks_AleksВы не видели этот xml, и не видели какие требования предъявили по извлечению данных.
Это был ответ на вопросGlory ЗЫ
Нафига делать "30- инсертов во временные таблицы" для разбора xml ?
Нехватает документированных методов работы с xml ?
- потому что по другому никак нельзя, мне знаете скучно, и я усложняю себе жизнь, да еще у меня на это времени вагон...
GloryНа картинке видно полное игнорирование вами хелпа.
Очень полезная информация... а как я обожаю эти рекомендации, по получению образования, получению нобелевской премии, и изучению мастера и Маргариты...
А прямо, в одном предложении указать, что именно там не так !?
Пол страницы форума, была потрачена на выяснение, кто кому что должен, и лишь один, два, ответа были по теме...
Огромное спасибо всем за помощь, все понял, буду сам разбираться...
...
Рейтинг: 0 / 0
Передача одного параметра а возврат таблицы
    #38723317
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleks_Aleks- потому что по другому никак нельзя, мне знаете скучно, и я усложняю себе жизнь, да еще у меня на это времени вагон...
Я не знаю, как по-другому и по-другому никак нельзя - это разные вещи

Aleks_AleksОчень полезная информация... а как я обожаю эти рекомендации, по получению образования, получению нобелевской премии, и изучению мастера и Маргариты...
Конечно, удобно, когда вместо чтения одного абзаца одной главы, вам ее перескажут

Aleks_AleksОгромное спасибо всем за помощь, все понял, буду сам разбираться...
Успехов. Побольше инсертов главное сделайте
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Передача одного параметра а возврат таблицы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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