Вопросы с тегом «t-sql»

Transact-SQL (T-SQL) - это диалект SQL, используемый Microsoft SQL Server и Sybase SAP.


6
Получение n строк на группу
Мне часто нужно выбирать количество строк из каждой группы в наборе результатов. Например, я мог бы хотеть перечислить 'n' самые высокие или самые низкие недавние значения заказа на клиента. В более сложных случаях количество строк в списке может варьироваться в зависимости от группы (определяется атрибутом записи группировки / родителя). Эта …

1
MERGE подмножество целевой таблицы
Я пытаюсь использовать MERGEоператор для вставки или удаления строк из таблицы, но я хочу воздействовать только на подмножество этих строк. В документации MERGEесть довольно строго сформулированное предупреждение: Важно указать только столбцы из целевой таблицы, которые используются для сопоставления. То есть укажите столбцы из целевой таблицы, которые сравниваются с соответствующим столбцом …

6
Скользящая сумма диапазона дат с использованием оконных функций
Мне нужно рассчитать скользящую сумму по диапазону дат. Чтобы проиллюстрировать это, используя пример базы данных AdventureWorks , следующий гипотетический синтаксис сделал бы именно то, что мне нужно: SELECT TH.ProductID, TH.TransactionDate, TH.ActualCost, RollingSum45 = SUM(TH.ActualCost) OVER ( PARTITION BY TH.ProductID ORDER BY TH.TransactionDate RANGE BETWEEN INTERVAL 45 DAY PRECEDING AND CURRENT …

2
Как создать Unicode параметры и имена переменных
Все это работает: CREATE DATABASE [¯\_(ツ)_/¯]; GO USE [¯\_(ツ)_/¯]; GO CREATE SCHEMA [¯\_(ツ)_/¯]; GO CREATE TABLE [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯] NVARCHAR(20)); GO CREATE UNIQUE CLUSTERED INDEX [¯\_(ツ)_/¯] ON [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯]); GO INSERT INTO [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯]) VALUES (N'[¯\_(ツ)_/¯]'); GO CREATE VIEW [¯\_(ツ)_/¯].[vw_¯\_(ツ)_/¯] AS SELECT [¯\_(ツ)_/¯] FROM [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]; GO CREATE PROC [¯\_(ツ)_/¯].[sp_¯\_(ツ)_/¯] @Shrug NVARCHAR(20) AS SELECT [¯\_(ツ)_/¯] …

4
Какой самый простой способ создать временную таблицу в SQL Server, которая может содержать результат хранимой процедуры?
Много раз мне нужно написать что-то вроде следующего при работе с SQL Server. create table #table_name ( column1 int, column2 varchar(200) ... ) insert into #table_name execute some_stored_procedure; Но создать таблицу с точным синтаксисом в результате хранимой процедуры - утомительная задача. Например, результат sp_helppublication имеет 48 столбцов! Я хочу знать, …

5
Оценивает ли оператор SQL Server CASE все условия или завершает работу при первом ИСТИННОМ условии?
CASEОценивает ли оператор SQL Server (в частности, 2008 или 2012) все WHENусловия или он завершается, когда находит WHENпредложение, которое оценивается как истинное? Если он проходит через весь набор условий, означает ли это, что последнее условие, оцениваемое как истинное, перезаписывает то, что выполнил первое условие, оцениваемое как истинное? Например: SELECT CASE …
44 sql-server  t-sql  case 

9
Просят не использовать транзакции и использовать обходной путь для симуляции одного
Я занимаюсь разработкой T-SQL в течение нескольких лет и постоянно копаюсь, продолжая изучать все, что могу, по всем аспектам языка. Недавно я начал работать в новой компании и получил, как мне кажется, странное предложение относительно транзакций. Никогда не используйте их. Вместо этого используйте обходной путь, имитирующий транзакцию. Это исходит от …

8
Запись результата выбора в CSV-файл
Нам нужно записать результаты запроса SELECT в CSV-файл. Как это можно сделать с помощью T-SQL в SQL Server 2008 r2? Я знаю, что это можно сделать в SSIS, но по некоторым причинам у нас нет этой опции. Я попытался использовать предложенный proc в статье ниже, но когда я запускаю proc, …

1
GO После каждого оператора T-SQL
Какова причина использования оператора GO после каждого оператора SQL? Я понимаю, что GO сигнализирует об окончании партии и / или разрешает репутацию утверждений, но какое преимущество имеет его использование после каждого утверждения. Мне просто любопытно, как много документации Microsoft и т. Д. Начали использовать ее после каждого утверждения, или, может …

3
Общая сумма с подсчетом?
Как следует из названия, мне нужна помощь в получении промежуточного итога в T-SQL. Проблема в том, что сумма, которую мне нужно сделать, это сумма счета: sum(count (distinct (customers))) Скажем, если бы я вел подсчет один, результат был бы: Day | CountCustomers ---------------------- 5/1 | 1 5/2 | 0 5/3 | …
34 sql-server  t-sql 

3
Табличный параметр как выходной параметр для хранимой процедуры
Можно ли использовать параметр Table-Valued в качестве выходного параметра для хранимой процедуры? Вот что я хочу сделать в коде /*First I create MY type */ CREATE TYPE typ_test AS TABLE ( id int not null ,name varchar(50) not null ,value varchar(50) not null PRIMARY KEY (id) ) GO --Now I …

7
Как узнать, используется ли база данных SQL Server?
Мы собираемся списать экземпляр SQL Server, на котором еще есть несколько баз данных. Как я могу определить, используются ли они пользователями или веб-приложением? Я нашел ветку форума с запросом T-SQL, который вы можете запустить, чтобы получить дату последнего запроса. Кажется, это работает, но я хочу знать, достаточно ли эта информация …
33 sql-server  t-sql 

5
Логические операторы ИЛИ И в условии и порядке условий в ГДЕ
Давайте рассмотрим эти два утверждения: IF (CONDITION 1) OR (CONDITION 2) ... IF (CONDITION 3) AND (CONDITION 4) ... Если CONDITION 1есть TRUE, будет CONDITION 2проверено? Если CONDITION 3есть FALSE, будет CONDITION 4проверено? Как насчет условий на WHERE: оптимизирует ли ядро ​​SQL Server все условия в WHEREпредложении? Должны ли программисты …

1
Почему скорость выполнения операторов зависит от сетевого подключения?
Похоже, что скорость выполнения T-SQL зависит от задержки сетевого соединения с сервером. Я предположил, что если SQL Server не будет о чем сообщить клиенту, он просто будет выполняться до тех пор, пока это не будет сделано, но тестирование покажет другую историю. create procedure UselessLoop @I int as declare @D datetime …
31 sql-server  t-sql 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.