Запитання з тегом «sql-server»

Усі версії Microsoft SQL Server (не MySQL). Будь ласка, додайте тег, що залежить від версії, як-от sql-server-2016, оскільки це часто стосується питання.

1
Які правила визначають, коли SQL Server використовує CTE як "огородження для оптимізації"?
Нещодавно Брент Озар опублікував публікацію, в якій детально описував деякі відмінності між SQL Server і PostgreSQL: Дві важливі відмінності між SQL Server і PostgreSQL Перший момент ("CTE - це огорожі для оптимізації") привернув мене до уваги, тому що очевидно, що в наведеному прикладі SQL Server поєднує CTE та основний запит …

3
Сортування розливів до tempdb за рахунок varchar (max)
На сервері з 32 ГБ ми запускаємо SQL Server 2014 SP2 з максимальною пам'яттю 25 ГБ, у нас є дві таблиці, тут ви знайдете спрощену структуру обох таблиць: CREATE TABLE [dbo].[Settings]( [id] [int] IDENTITY(1,1) NOT NULL, [resourceId] [int] NULL, [typeID] [int] NULL, [remark] [varchar](max) NULL, CONSTRAINT [PK_Settings] PRIMARY KEY CLUSTERED …

1
Збій SHRINKFILE - Чому збільшується розмір файлу?
Я виконую деякі SHRINKFILEоперації з очищення купки крихітних непотрібних файлів у групі файлів. Для одного із скорочень команда нижче призводить до помилки: DBCC SHRINKFILE (N'myfile' , EMPTYFILE)' Ідентифікатор файла x ідентифікатора бази даних x неможливо зменшити, оскільки він або стискається іншим процесом, або порожній Він не порожній і не стискається. …

2
Найкращий спосіб розміщувати коми у великій кількості
Я почав нову роботу, і це передбачає перегляд великої кількості. Чи є простий спосіб додати коси до поля intчи decimalполя, щоб зробити його читабельним? Наприклад, SQL Server виводить стовпчик зліва, але для моєї користі мені потрібно, щоб він виглядав як той, що праворуч: 2036150 -> 2,036,150 ... чи мені би …

1
Який алгоритм стоїть за оператором EXCEPT?
Який внутрішній алгоритм роботи оператора Except під обкладинками SQL Server? Чи внутрішньо він займає хеш кожного ряду і порівнює? Девід Лозінкі провів дослідження, SQL: Найшвидший спосіб вставити нові записи там, де його ще не існує. Він показав, за винятком, що заява є найшвидшим для великих рядків; уважно підходить до наших …

2
Чому це швидше і чи безпечно його використовувати? (ДЕ перша буква в алфавіті)
Якщо коротко розповісти, ми оновлюємо невеликі таблиці людей із цінностями з дуже великої таблиці людей. В останньому тесті на це оновлення потрібно близько 5 хвилин. Ми натрапили на те, що, здається, найбільш глупа оптимізація, яка, здавалося б, прекрасно працює! Цей же запит зараз працює менше ніж за 2 хвилини і …

1
Стрільба тригера, незважаючи на жодні рядки
Це більше загальне питання, але мотивація цього питання була проблемою, з якою я зіткнувся під час використання SQL Server. У мене цей тригер прикріплений до події "Вставка" в таблиці, яка містить певну логіку, яка, як побічний ефект, викликала б помилку, якби не було вставлено рядки. Після подальшого розслідування я виявив, …

1
Чому б не приєднатися до роботи з усунення з sys.query_store_plan?
Далі йде спрощення проблеми з продуктивністю, що виникає із магазином запитів: CREATE TABLE #tears ( plan_id bigint NOT NULL ); INSERT #tears (plan_id) VALUES (1); SELECT T.plan_id FROM #tears AS T LEFT JOIN sys.query_store_plan AS QSP ON QSP.plan_id = T.plan_id; plan_idКолона документована як первинний ключ sys.query_store_plan, але план виконання не …

2
Розрахунок кількості запасів на основі журналу змін
Уявіть, що у вас є така структура таблиці: LogId | ProductId | FromPositionId | ToPositionId | Date | Quantity ----------------------------------------------------------------------------------- 1 | 123 | 0 | 10002 | 2018-01-01 08:10:22 | 5 2 | 123 | 0 | 10003 | 2018-01-03 15:15:10 | 9 3 | 123 | 10002 | …

2
Поверніть послідовності xml, де атрибут не містить конкретного символу
Розглянемо наступний простий XML: <xml> <customer name="Max"> <email address="me@you.com" /> </customer> <customer name="Erik"> <email address="erik@your-mom.com" /> </customer> <customer name="Brent"> <email address="brentcom" /> </customer> </xml> Я хочу отримати список <Customer>послідовностей, де addressатрибут <email>елемента не містить @. Отже, я хочу, щоб результат виглядав так: <customer name="Brent"> <email address="brentcom" /> </customer> mcve : …
10 sql-server  xml  xquery 

1
Чи B-Tree повторно врівноважується під час видалення даних із таблиці SQL Server із кластерним індексом?
У мене є таблиця в базі даних SQL Server з кластерним індексом на первинному ключі. У таблиці 1 мільйон рядків. Якщо я видаляю 10K рядків з таблиці, чи індексується реструктуризація під час операції видалення? Операція видалення є частиною збереженої процедури. За один раз, більше ніж один клієнт може виконати збережену …

2
Кожна партія викликає компіляцію
У нас є стороннє додаток, яке надсилає операції T-SQL партіями. База даних розміщується на SQL Server 2016 Enterprise SP1 CU7, 16 ядер та 256 ГБ пам'яті. Увімкнено оптимізацію для спеціальної роботи. Це фіктивний приклад запитів, які виконуються: exec sp_executesql N' IF @@TRANCOUNT = 0 SET TRANSACTION ISOLATION LEVEL SNAPSHOT select …

1
Як помножити рядки для стовпця, який містить від’ємні та нульові значення?
Я намагаюся отримати Продукт усіх рядків для певного стовпця в групі за запитом. Більшість прикладів, які я знайшов, спрямовують мене на поєднання exp, sumіlog exp(sum(log([Column A]))) Проблема, яка у мене виникає, полягає в тому, що стовпець містить деякі нулі для значень, і, таким чином, я отримую цю помилку, коли нулі …

2
Якщо тупик подій обміну паралелізмом не спричиняє жертв, це проблема?
У нашому виробничому середовищі ми бачимо багато подібних тупіків паралельних внутрішніх запитів (SQL Server 2012 SP2 - так ... я знаю ...), однак, дивлячись на XML тупикового кута, який був зафіксований за допомогою розширених подій, список жертв порожній. <victim-list /> Очевидно, що тупиковий замок знаходиться між 4 потоками, дві з …

1
Оптимізуйте індекс у таблиці 2,135,044,521 рядків
У мене є проблема вводу / виводу з великою таблицею. Загальна статистика Таблиця має такі основні характеристики: середовище: база даних SQL Azure (рівень P4 Premium (500 DTU)) рядки: 2,135,044,521 1,275 використаних розділів кластерний та розділений індекс Модель Це реалізація таблиці: CREATE TABLE [data].[DemoUnitData]( [UnitID] [bigint] NOT NULL, [Timestamp] [datetime] NOT …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.