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.
Patrzę na to starsze zapytanie SQL. Nie jestem w stanie zrozumieć, dlaczego łączy wewnętrznie ten sam stół dwa razy w tych samych kolumnach. Mówię o tabelach Table1 i Table1 połączonych z aliasem „Table1Alias”, SELECT DISTINCT othercolumns, Table1Alias.columna FROM maintable INNER JOIN secondarytable ON maintable.id1 = secondarytable.a_id1 INNER JOIN table1 ON …
Jakiś czas temu Brent Ozar opublikował post opisujący niektóre różnice między SQL Server a PostgreSQL: Dwie ważne różnice między SQL Server a PostgreSQL Pierwszy punkt („CTE to ogrodzenia optymalizacyjne”) przykuł moją uwagę, ponieważ jest oczywiste, że w podanym przykładzie SQL Server łączy CTE i główne zapytanie razem i optymalizuje je …
Krótko mówiąc, aktualizujemy małe tabele osób o wartościach z bardzo dużej tabeli osób. W ostatnim teście uruchomienie tej aktualizacji zajmuje około 5 minut. Natknęliśmy się na coś, co wydaje się najgłupszą możliwą optymalizacją, która na pozór działa idealnie! To samo zapytanie jest teraz uruchamiane w mniej niż 2 minuty i …
Rozpocząłem nową pracę, która polega na przyglądaniu się dużej grupie. Czy istnieje prosty sposób dodania przecinków do pola intlub, decimalaby był czytelny? Na przykład SQL Server wyświetla kolumnę po lewej stronie, ale dla własnego zdrowia potrzebuję, aby wyglądała jak ta po prawej: 2036150 -> 2,036,150 ... czy musiałbym napisać coś …
Jaki jest wewnętrzny algorytm jak wyjątkiem operatora działa pod kołdrą w SQL Server? Czy to wewnętrznie zajmuje hash każdego wiersza i porównuje? David Lozinksi przeprowadził badanie, SQL: Najszybszy sposób wstawiania nowych rekordów tam, gdzie jeszcze nie istnieje . Pokazał, że instrukcja Except jest najszybsza dla dużej liczby wierszy; ściśle powiązane …
To jest bardziej ogólne pytanie, ale motywacją tego pytania był problem, który napotkałem podczas korzystania z SQL Server. Mam ten wyzwalacz dołączony do zdarzenia Insert w tabeli, która zawiera pewną logikę, która jako efekt uboczny spowodowałaby błąd, gdyby nie wstawiono żadnych wierszy. Po dalszym dochodzeniu odkryłem, że spust uruchamia się …
Poniżej przedstawiono uproszczenie problemu z wydajnością występującego w magazynie zapytań: 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_idKolumna jest udokumentowana jako klucz podstawowy sys.query_store_plan, ale plan wykonania nie …
Mam tabelę w bazie danych SQL Server z indeksem klastrowym na kluczu podstawowym. Tabela ma 1 milion wierszy. Jeśli usunę 10 000 wierszy z tabeli, czy indeks zostanie zrestrukturyzowany podczas operacji usuwania? Operacja usuwania jest częścią procedury składowanej. Jednocześnie więcej niż jeden klient może wykonywać procedurę przechowywaną, jednak każde pojedyncze …
Usiłuję uzyskać iloczyn wszystkich wierszy dla określonej kolumny w grupie pogrupowanej według zapytania. Większość przykładów mam punkt znalazł mnie w kierunku łączenia exp, sumilog exp(sum(log([Column A]))) Problem, który mam, polega na tym, że kolumna zawiera niektóre zera wartości, dlatego otrzymuję ten błąd, gdy zera są przekazywane do logfunkcji: Wystąpiła niepoprawna …
W naszym środowisku produkcyjnym widzimy wiele takich zakleszczeń równoległych wątków wewnątrz kwerendy (SQL Server 2012 SP2 - tak ... wiem ...), jednak patrząc na XML zakleszczenia przechwycony przez zdarzenia rozszerzone, lista ofiar jest pusta. <victim-list /> Zakleszczenie wydaje się być między 4 wątkami, dwoma z WaitType="e_waitPipeNewRow"i dwoma z WaitType="e_waitPipeGetRow". <resource-list> …
Mamy aplikację innej firmy, która wysyła instrukcje T-SQL partiami. Baza danych jest hostowana na SQL Server 2016 Enterprise SP1 CU7, 16 rdzeniach i 256 GB pamięci. Optymalizacja pod kątem Ad-Hoc jest włączona. To jest fikcyjny przykład wykonywanych zapytań: exec sp_executesql N' IF @@TRANCOUNT = 0 SET TRANSACTION ISOLATION LEVEL SNAPSHOT …
Mam taką strukturę tabeli (uproszczonej) Name, EMail, LastLoggedInAt Mam użytkownika w programie SQL Server (RemoteUser), który powinien widzieć tylko dane (za pośrednictwem kwerendy Select), w których pole LastLoggdInAt nie ma wartości null. Wygląda na to, że mogę to zrobić? Czy to możliwe?
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.