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

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

1
Использование FLOATs с RAISERROR
Я использую RAISERROR()для обеспечения некоторых базовых функций модульного тестирования (как здесь ), но я разочарован невозможностью использовать FLOATsв сообщении об ошибке. Я знаю, что могу преобразовать float в строку, но я использую RAISERRORв каждом модульном тесте, я не хочу добавлять еще одну строку кода для каждого теста. (Мои модульные тесты …
11 sql-server  t-sql 

2
Преобразовать столбец даты и времени в количество секунд
В моей базе данных SQL Server у меня есть datetimeстолбец. Каков хороший способ создать новый столбец, который представляет longзначение для datetimeстолбца? Это longбудет представлять количество секунд. Я подумал, что если я смогу преобразовать его в longs, это упростит группирование по запросам за промежутки времени, поскольку я мог бы просто разделить …

2
Как динамически изменить базу данных с помощью TSQL
У меня проблемы с попыткой динамически изменить контекст SSMS на базу данных, указанную в динамическом SQL: EXEC sys.sp_executesql N'USE db1 ' ; Он выполняется успешно, однако контекст базы данных SSMS не изменяется. Я попытался небольшое изменение выше, как DECLARE @sql NVARCHAR(100) DECLARE @db NVARCHAR(50) SET @db = N'db1' SET @sql …

3
SQL Server Вставка в - Как определить столбец, который вызывает ошибку усечения
У меня есть хранимая процедура, которая вставляет 650 полей в таблицу. Вставка не выполняется с ошибкой усечения. Это просто INSERT INTO SELECT (a bunch of fields) FROM (a bunch of tables) Ниже приведено сообщение об ошибке: Сообщение 8152, уровень 16, состояние 14, процедура DSP_Procedure, строка 1075 Строка или двоичные данные …

4
Как создать строку для каждого дня в диапазоне дат, используя хранимую процедуру?
Я хотел бы создать хранимую процедуру, которая будет создавать строки в таблице для каждого дня в заданном диапазоне дат. Хранимая процедура принимает два входа: дату начала и дату окончания желаемого пользователем диапазона дат. Итак, допустим, у меня есть таблица примерно так: SELECT Day, Currency FROM ConversionTable Day - это DateTime, …

5
Оператор DELETE конфликтует с ограничением REFERENCE
Я пытаюсь удалить всех пользователей, но получаю сообщение об ошибке: Msg 547, Level 16, State 0, Line 1 The DELETE statement conflicted with the REFERENCE constraint "FK_M02ArticlePersons_M06Persons". The conflict occurred in database "workdemo.no", table "dbo.M02ArticlePersons", column 'M06PersonId'. The statement has been terminated. Запрос: DELETE FROM [workdemo.no].[dbo].[M06Persons] WHERE ID > '13' …
11 sql-server  t-sql 

1
Только выбрать суперсеты
У меня есть две таблицы (вместе с некластеризованным индексом), которые можно создать с помощью следующих команд: CREATE TABLE GroupTable ( GroupKey int NOT NULL PRIMARY KEY, RecordCount int NOT NULL, GroupScore float NOT NULL ); CREATE TABLE RecordTable ( RecordKey varchar(10) NOT NULL, GroupKey int NOT NULL, PRIMARY KEY(RecordKey, GroupKey) …

4
Сброс промежуточного итога на основе другого столбца
Пытаюсь подсчитать промежуточную сумму. Но он должен сбрасываться, когда накопленная сумма больше, чем значение другого столбца create table #reset_runn_total ( id int identity(1,1), val int, reset_val int, grp int ) insert into #reset_runn_total values (1,10,1), (8,12,1),(6,14,1),(5,10,1),(6,13,1),(3,11,1),(9,8,1),(10,12,1) SELECT Row_number()OVER(partition BY grp ORDER BY id)AS rn,* INTO #test FROM #reset_runn_total Детали индекса: …

6
Обрезать пробелы (пробелы, табуляции, новые строки)
Я нахожусь на SQL Server 2014, и мне нужно очистить пробел от начала и конца содержимого столбца, где пробелами могут быть простые пробелы, табуляции или переводы строк (как \nи \r\n); например ' this content ' should become 'this content' ' \r\n \t\t\t this \r\n content \t \r\n ' should become …

3
Заменить специальные символы в столбце пробелом
Я пытаюсь написать запрос, который заменяет специальные символы пробелом. Код ниже помогает идентифицировать строки. (допустимы буквенно-цифровые символы, запятая и пробел): SELECT columnA FROM tableA WHERE columnA like '%[^a-Z0-9, ]%' Как интегрировать функцию замены в оператор выбора, чтобы все символы, кроме буквенно-цифровых, запятой и пробела в наборе результатов, заменялись на '' …

4
Каковы версии FIRST () и LAST () для SQL Server 2012?
У меня есть таблица с valueколонкой. Я хочу вычислить последнюю строку минус первую строку, как показано здесь: id value 1 10 2 45 3 65 4 95 . . . . . . 500 200 Я хочу получить 200 - 10 = 190 Я попытался использовать приведенную ниже команду в …

3
Отфильтрованный индекс используется только тогда, когда отфильтрованная часть находится в СОЕДИНЕНИИ, а не ГДЕ
Я создал отфильтрованный индекс ниже, однако, когда я запускаю 2 запроса дальше вниз, этот индекс используется только для поиска в первом примере, который имеет END_DTTM в JOIN, а не в предложении where (это единственная разница в запросах) , Кто-нибудь может объяснить, почему это происходит? Создание индекса CREATE NONCLUSTERED INDEX [ix_PATIENT_LIST_BESPOKE_LIST_ID_includes] …

3
sql server: обновление полей на огромной таблице небольшими порциями: как получить прогресс / статус?
У нас очень большая таблица (100 миллионов строк), и нам нужно обновить пару полей в ней. Что касается доставки журналов и т. Д., Мы также, очевидно, хотим, чтобы они содержали транзакции размером с кусочек. Подойдет ли нижеприведенное? И как мы можем заставить его напечатать какой-то вывод, чтобы мы могли видеть …
10 sql-server  t-sql 

1
TSQL Почему Top быстрее с переменной?
Всем утро, Я работал над некоторым умеренно сложным SQL, чтобы «получить» некоторые данные из сторонней базы данных продуктов, чтобы отобразить их в наших собственных приложениях. Я добавил в выборку, чтобы получить верхнюю запись из таблицы в подзапросе (если это имеет смысл) запрос занял около 3 минут, чтобы вернуть окончательный набор …
10 sql-server  t-sql 

1
Как правильно обеспечить уникальные записи в дизайне временной базы данных?
У меня проблемы с дизайном временной базы данных. Мне нужно знать, как убедиться, что у меня есть только одна активная запись для любого заданного периода времени для магазина. Я прочитал этот ответ , но боюсь, что не могу понять, как сработает триггер. В частности, как бы я работал, чтобы триггер …

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