Pytania otagowane jako sql-server

Wszystkie wersje Microsoft SQL Server (nie MySQL). Dodaj również tag specyficzny dla wersji, np. Sql-server-2016, ponieważ często jest on odpowiedni dla pytania.

2
Dziwne zachowanie agregacji strumienia
Pytanie: declare @X xml = ' <item ID = "0"/> <item ID = "1"/> <item/> <item/>'; select I.X.value('@ID', 'int') from @X.nodes('/item') as I(X); Wynik: ----------- 0 1 NULL NULL Plan wykonania: Górna gałąź niszczy XML do czterech wierszy, a dolna gałąź pobiera wartość atrybutu ID. To, co wydaje mi się …

3
DROP USER trwa zbyt długo, gdy jest wielu użytkowników
W wystąpieniu programu SQL Server 2014 z wystarczającą ilością pamięci RAM i szybkimi dyskami ponad 160 użytkowników ma dostęp do bazy danych. Z jakiegoś powodu mi nie wiadomo, uruchomienie polecenia DROP USER [username]w tej bazie danych trwa do 5 sekund na użytkownika. Ponowne przypisywanie użytkowników do loginów i przywracanie ich …

4
Serwer Sql nie używa indeksu przy prostej bijectcji
To kolejna zagadka optymalizatora zapytań. Może po prostu przeszacowuję optymalizatory zapytań, a może coś mi brakuje - więc zamieszczam to. Mam prosty stół CREATE TABLE [dbo].[MyEntities]( [Id] [uniqueidentifier] NOT NULL, [Number] [int] NOT NULL, CONSTRAINT [PK_dbo.MyEntities] PRIMARY KEY CLUSTERED ([Id]) ) CREATE NONCLUSTERED INDEX [IX_Number] ON [dbo].[MyEntities] ([Number]) z indeksem …

1
Wyrażenie CASE zwraca nieprawidłową wartość podczas korzystania z SUFITU
Natknąłem się na problem, w którym CASEwyrażenie nie zwraca tego, czego oczekuję. W ramach testu dodałem zmienną dziesiętną i uruchomiłem CASEprzeciwko niej to samo wyrażenie i działa ono dobrze, zwracając wyniki zgodnie z oczekiwaniami (zaokrąglając wartość w górę, kiedy IsGun=1. Ale kiedy uruchamiam to samo CASEwyrażenie względem innej wartości dziesiętnej, …


4
„Id” w formacie: YYYYNNNNNN z częścią NNNNNN uruchamianą co roku
Mam wymaganie biznesowe, aby każdy rekord w tabeli faktur miał identyfikator, który wygląda jak YYYYNNNNNN. Część NNNNNN musi zostać uruchomiona ponownie na początku każdego roku. Tak więc pierwszy wiersz wprowadzony w 2016 roku będzie wyglądał jak 2016000001, a drugi jak 2016000002 itd. Powiedzmy, że ostatni rekord dla 2016 roku to …
11 sql-server  t-sql 


3
Kolejność pól w złożonej kolejności indeksu z polami o wysokiej selektywności i niskiej selektywności
Mam tabelę SQL Server z ponad 3 miliardami wierszy. Jedno z moich zapytań zajmuje bardzo dużo czasu, dlatego rozważam jego optymalizację. Zapytanie wygląda następująco: SELECT [Enroll_Date] ,Count(*) AS [Record #] ,Count(Distinct UserID) AS [User #] FROM UserTable GROUP BY [Enroll_Date] [Data rejestracji] to kolumna o niskiej selektywności z mniej niż …

5
Odwróć wyrażenie logiczne, które może zwrócić NIEZNANY
Przykład Mam stolik ID myField ------------ 1 someValue 2 NULL 3 someOtherValue oraz wyrażenie logiczne T-SQL, które może mieć wartość PRAWDA, FAŁSZ lub (ze względu na logikę potrójną SQL) NIEZNANE: SELECT * FROM myTable WHERE myField = 'someValue' -- yields record 1 Jeśli chcę uzyskać wszystkie inne rekordy , nie …

1
Dlaczego mój indeks może oszacować odpowiednią liczbę wierszy, a operator sortowania nie może?
Mam zapytanie, które korzysta z funkcji w predykacie, mniej więcej tak: commentType = 'EL' AND commentDateTime >= DATEADD(month,datediff(month,0,getdate()) - 13,0) Mam filtrowany indeks na commentType, który ma 40 tys. Wierszy, a kiedy uruchamiam zapytanie, szacunkowa liczba wierszy dla szukania indeksu jest bardzo dokładna (około 11 tys.), Ale w następnym kroku …

1
Jak wyeksportować dane wyjściowe sp_AskBrent?
Mamy instancję, która losowo przyspiesza procesor. Chcę utworzyć alert, który uruchamia się na procesorze powyżej 90% i automatycznie wywołuje zadanie, które uruchamia się sp_AskBrenti wysyła mi wiadomość e-mail z danymi wyjściowymi. Jednak wynik jest nieczytelny ani w tekście, ani w formacie HTML. Nie pasuje nawet do arkusza kalkulacyjnego Excel. Jak …



1
Ustaw stare dane tylko do odczytu
W projekcie bazy danych, nad którym obecnie pracuję, wymagana jest zmiana „starych” danych na „tylko do odczytu”. Czy jest to możliwe w SQL Server? Nie mogę zmienić uprawnienia do tabeli, ponieważ uprawnienie tylko do odczytu powinno mieć zastosowanie tylko do danych starszych niż określony próg, tzn. Użytkownicy powinni nadal mieć …
11 sql-server 

2
Widok indeksowany w SQL Server
Mam na nim tabelę i indeksowany widok Create table mytable1 (ID int identity(1,1), Name nvarchar(100)) Create table mytable2 (ID int identity(1,1), Name nvarchar(100)) Create view myview with schemabinding as select a.name, b.name from mytable1 a join mytable2 b on a.Id = b.Id Teraz jeśli uruchomię następujące zapytanie select a.name, b.name …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.