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ę …
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 …
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 …
Mam pewne problemy w odtworzenie bazy danych z jednego do wielu (1: M) relacji między użytkownikami i przedmioty . To jest całkiem proste, tak; jednak każdy przedmiot należy do określonej kategorii (np. samochód , łódź lub samolot ), a każda kategoria ma określoną liczbę atrybutów, np .: Car Struktura: +----+--------------+--------------+ …
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, …
Czy ktoś może mi pokazać dobry przykład przewagi MDX nad zwykłym SQL podczas wykonywania zapytań analitycznych? Chciałbym porównać zapytanie MDX z zapytaniem SQL, które daje podobne wyniki. Wikipedia mówi : Chociaż niektóre z nich można przetłumaczyć na tradycyjny SQL, często wymagałoby to syntezy niezgrabnych wyrażeń SQL, nawet w przypadku bardzo …
Czy ktoś może zacytować mi scenariusz z prawdziwego świata, gdy zmiana wielu grup plików na tylko do odczytu jest dobrą opcją i kiedy z nich korzystać? Jakie są korzyści, jeśli ustawisz opcję tylko do odczytu? Czy w bazie danych z wieloma aplikacjami musisz wykonać kopie zapasowe dla całej bazy danych, …
W ostatnim projekcie wymagano podania, kiedy zasób zostanie w pełni wykorzystany. Oprócz daty wyczerpania kalendarza poproszono mnie o pokazanie pozostałego czasu w formacie angielskim, np. „1 rok, 3 miesiące do końca”. Wbudowana DATEDIFFfunkcja Zwraca liczbę ... określonych granic datapart przekroczonych między określoną datą początkową i końcową. Jeśli zastosuje się go …
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 …
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ż …
(Pytanie przeniesione z SO) Mam tabelę (dane fikcyjne) z indeksem klastrowym zawierającym 2 kolumny: Teraz uruchamiam te dwa zapytania: declare @productid int =1 , @priceid int = 1 SELECT productid, t.priceID FROM Transactions AS t WHERE (productID = @productid OR @productid IS NULL) AND (priceid = @priceid OR @priceid IS …
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 …
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 …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.