Описание тега cross-apply
Оператор T-SQL APPLY позволяет вызывать возвращающую табличное значение функцию для каждой строки, возвращаемой внешним табличным выражением запроса. CROSS APPLY действует как замена INNER JOIN и возвращает строки только в том случае, если есть совпадение по условию соединения. Использование CROSS APPLY в некоторых случаях будет работать лучше, чем эквивалентный оператор JOIN. Он похож на CROSS JOIN LATERAL в стандарте SQL.
1
ответ
Эквивалент перекрестного применения и выбора вершины
У меня есть таблица (скрипт ниже): use master go -- -- if db_id ( 'CrossApplyDemo' ) is not null drop database CrossApplyDemo go create database CrossApplyDemo go use CrossApplyDemo go -- if object_id ( 'dbo.Countries', 'U' ) is not null drop table …
23 авг '12 в 09:30
1
ответ
Как объединить несколько записей в одну, используя номер строки?
Как я могу получить несколько записей предупреждений (до 10 на одного учащегося), которые будут отображаться в одной записи на каждого учащегося? Я пытаюсь использовать номер строки для нумерации записей, а затем помещать их в выходные данные, но на…
19 сен '17 в 17:22
1
ответ
Лучший способ объединить две таблицы * включая * дубликаты из одной таблицы
Счета (таблица) +----+----------+----------+-------+ | id | account# | supplier | RepID | +----+----------+----------+-------+ | 1 | 123xyz | Boston | 2 | | 2 | 245xyz | Chicago | 2 | | 3 | 425xyz | Chicago | 3 | +----+----------+----------+-------+…
15 ноя '11 в 20:57
1
ответ
TSQL Cross Apply не работает должным образом
Есть 3 таблицы: пользователей Depts (хотя, кажется, не обязательно для запроса, но...) Сообщения Пользователи: UID, DeptID, Name, Surname, Admin U1 DeptA John Doe 0 U2 DeptB Jack Fisher 0 U3 DeptA Jill Smith 0 U4 DeptA Joan Green 1 U5 DeptC Jeff Jon…
23 окт '15 в 12:50
0
ответов
Применить оператор в SQL и средство просмотра отчетов
У меня есть хранимая процедура, которую я пытаюсь вызвать из средства просмотра отчетов, и я получаю сообщение об ошибке ниже Exception has been thrown by the target of an invocation. Failed to enable constraints. One or more rows contain values vio…
15 апр '15 в 13:35
1
ответ
CROSS APPLY Стиль против производительности
Должен ли я использовать отдельный CROSS APPLY для каждого псевдонима или определить несколько выражений в одном CROSS APPLY, где это возможно? Я рефакторинг многих очень сложных запросов SQL (часто четыре или пять страниц с дюжиной JOIN), которые г…
10 июл '12 в 18:14
2
ответа
Entity Framework отображает многоуровневые свойства
Я пытаюсь реализовать иерархическую структуру наследования в Entity Framework, специально для настроек. Например, допустим, у нас есть пользовательские настройки: public class StorePreference: Preference { } public class UserPreference : Preference …
17 апр '17 в 20:17
1
ответ
Как запросить все дочерние узлы от родительского?
DECLARE @xml AS XML SET @xml = CAST('<codes><pcc>DFC</pcc><pcc>MAI</pcc><pcc>PFS</pcc></codes>' AS XML) SELECT pcc.value('pcc[1]', 'varchar(max)') AS [ColumnTest] FROM @xml.nodes('/codes') results ( pc…
12 мар '13 в 22:18
0
ответов
Включение фактического плана запроса взрывает время выполнения
Я использую SQL Server 2005, и у меня есть довольно сложный запрос, который занимает секунду или две для выполнения. Я хотел отладить производительность, используя план запроса, но когда я включаю фактический план выполнения в вывод, запрос идет от …
12 ноя '12 в 22:28
1
ответ
Используйте функцию перекрестного применения
У меня есть этот перекрестный запрос и я хочу суммировать его результат CROSS APPLY (SELECT SUM(CASE WHEN [day] BETWEEN @FirstDay AND @LastDay THEN 1 ELSE 0 END) AS UsedDays FROM Calendar c WHERE ([day] >= r.[DateFrom] AND [day] <= r.[DateTo] …
12 окт '18 в 07:04
2
ответа
CROSS APPLY Создание дополнительных записей
Я пытаюсь создать отчет, который отображает потенциальные дубликаты записей на основе трех критериев: последние 4 из SSN, фамилия и DOB. Я разместил здесь вопрос по этой проблеме и получил ответ, что я должен использовать Cross Apply для отмены данн…
31 мар '17 в 04:08
1
ответ
Получить разделенные запятыми значения из XML в SQL
Я вызываю Scalar UDF из хранимой процедуры, чтобы получить значение столбца. Внутри скалярного UDF у меня есть xml, и я должен получить значения через запятую определенного узла. Я использовал Cross apply, но это вызвало огромные проблемы с производ…
14 мар '17 в 03:05
2
ответа
Как обрабатывать пустые строки в CROSS APPLY [SQL Server]
Я ниже Stored Procedure- ALTER PROCEDURE [dbo].[Optimized_GetArticlePostAMP] ( @PostID int ) AS BEGIN SET NOCOUNT ON; SET STATISTICS TIME ON DECLARE @SectionId int ,@datediff int DECLARE @postdate datetime SELECT P.PostId, P.SectionID, P.PostName,MP…
23 июн '16 в 09:53
1
ответ
sp_executesql против пользовательской скалярной функции
В таблице ниже я храню некоторые условия, подобные этим: Затем, как правило, во второй таблице у меня есть следующие записи: и мне нужно сравнить эти значения, используя правильное условие, и сохранить результат (скажем, "0" для "ложь" и "1" для "ис…
21 авг '13 в 12:27
1
ответ
Использование запроса выбора в качестве параметра в табличной функции
У меня есть функция, которая принимает целочисленный ввод и возвращает таблицу с соответствующими идентификаторами из таблицы ниже. ID NAME RELATED_ID 1 a null 2 b null 3 c 1 4 d 1 Итак, выберите * из fn_getrelatedids(1) возвращает ID 1 3 4 Я хочу и…
19 фев '16 в 15:12
1
ответ
SQL Server: выберите счетчик одного столбца, одновременно проверяя различное значение в другом
Я пытаюсь получить счетчик определенного столбца (sch1.[Key]), а также проверяю, чтобы другой столбец имел разные значения (p.[Ref]). Есть ли простой способ сделать это с помощью SQL Server? Я думаю, что ответ лежит где-то в соединении таблиц [test]…
29 май '17 в 17:55
3
ответа
SQL Server: запуск отдельной CTE для каждой записи без курсора или функции
Приведенная таблица А с колонкой LocationID и много записей, Можно ли полностью запустить CTE для каждой записи без использования курсора (во время цикла выборки) или функции (через перекрестное применение)? Я не могу запустить CTE из таблицы A, пот…
29 окт '18 в 19:22
0
ответов
SQL Server CROSS APPLY никогда не заканчивается ссылкой на другую таблицу
Я пытаюсь использовать эту функцию ExplodeDate. Но я не могу запустить его одним простым запросом. Я могу воспроизвести это с пустой базой данных на SQL Server 2016 локально и в базе данных Azure. Пожалуйста, используйте следующий код, чтобы воспрои…
13 апр '18 в 11:53
2
ответа
Оптимизировать запрос с несколькими OUTER APPLY
У меня запрос с несколькими OUTER APPLY но у всех таблиц есть первичные ключи в соединенных столбцах (поэтому здесь используются кластерные индексы), поэтому я не знаю, как оптимизировать этот запрос в дальнейшем. Также здесь невозможно использовать…
08 мар '18 в 11:12
1
ответ
Процедура SQL Server завершается преждевременно после преобразования строк с разделителями-запятыми в XML
У меня есть процедура, которая прекрасно выполняется в среде SSMS, но когда я подключаю ее к веб-странице, вместо того, чтобы увидеть возвращенный список packageID, возвращаемое значение равно нулю. Я проверил разрешения, но это не проблема. Затем я…
17 ноя '15 в 12:14