Administratorzy baz danych

Pytania i odpowiedzi dla profesjonalistów baz danych, którzy chcą poprawić swoje umiejętności baz danych i uczyć się od innych w społeczności

5
Klauzula SARGable WHERE dla dwóch kolumn dat
Mam interesujące pytanie dotyczące SARGability. W tym przypadku chodzi o użycie predykatu na podstawie różnicy między dwiema kolumnami dat. Oto konfiguracja: USE [tempdb] SET NOCOUNT ON IF OBJECT_ID('tempdb..#sargme') IS NOT NULL BEGIN DROP TABLE #sargme END SELECT TOP 1000 IDENTITY (BIGINT, 1,1) AS ID, CAST(DATEADD(DAY, [m].[severity] * -1, GETDATE()) AS …

6
Czy mogę polegać na wczytywaniu wartości tożsamości programu SQL Server w kolejności?
TL; DR: Poniższe pytanie sprowadza się do: Podczas wstawiania wiersza istnieje okno możliwości między wygenerowaniem nowej Identitywartości a zablokowaniem odpowiedniego klucza wiersza w indeksie klastrowym, w którym zewnętrzny obserwator mógłby zobaczyć nowszą Identity wartość wprowadzona przez równoległą transakcję? (W SQL Server.) Wersja szczegółowa Mam tabelę programu SQL Server z Identitykolumną …

4
Dlaczego dziennik transakcji nadal rośnie w trybie prostego odzyskiwania z nocnymi kopiami zapasowymi
Przed natychmiastowym oznaczeniem jako duplikat przeczytałem artykuł Mike'a Walsha: Dlaczego dziennik transakcji wciąż rośnie lub brakuje miejsca? , ale nie sądzę, że dało to odpowiedź na moją sytuację. Przejrzałem kilkanaście podobnych pytań, ale najważniejsze z nich po prostu powiedziały „duplikuj” i wskazały na pytanie Mike'a. Szczegóły: Mam kilka ~ 500 …

2
Czy w SQL Server mogę zagwarantować zamówienie bez wyraźnej klauzuli ORDER BY, gdy wyszukiwanie tabeli jest wymuszane tylko w przypadku indeksu klastrowanego?
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Exchange Exchange Administrators Database Administrator. Migrował 4 lata temu . Aktualizacja 18.12.2014 Przy przytłaczającej odpowiedzi na główne pytanie brzmi „Nie”, bardziej interesujące odpowiedzi skupiły się na części 2, w jaki sposób rozwiązać zagadkę wydajności w sposób …
24 sql-server 




5
Identyfikacja nieużywanych procedur przechowywanych
W przyszłym roku pomagam w czyszczeniu kilku środowisk SQL Server. Mamy około 10 000 procedur przechowywanych i szacujemy, że tylko około 1000 z nich jest używanych regularnie, a kolejne 200 jest używanych w rzadkich przypadkach, co oznacza, że ​​mamy dużo pracy. Ponieważ mamy wiele działów i zespołów, które mają dostęp …


4
Ustaw nazwy atrybutów podczas tworzenia JSON za pomocą row_to_json
Czy można zmienić nazwy domyślne f1, f2, f3...przy użyciu row_to_jsonfunkcji tylko dla niektórych kolumn? potrafię row_to_json(customers) powracający {"id_customer":2,"first_name":"bla","last_name":"second_bla"} Ale jeśli chcę tylko nazwy bez id_customer, muszę użyć row_to_json(row(first_name, last_name)) a potem dostaję {"f1":"bla","f2":"second_bla"} Chciałbym uzyskać ten wynik z domyślnymi nazwami kolumn lub własnymi. Wiem, że mogę stworzyć własny typ kompozytu …
24 postgresql 

3
Indeks kolumny Persisted Computed wymaga wyszukiwania klucza, aby uzyskać kolumny w wyliczonym wyrażeniu
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Exchange Exchange Administrators Database Administrator. Migrował 6 lat temu . Mam utrwaloną kolumnę obliczeniową na stole, która jest po prostu złożona z połączonych kolumn, np CREATE TABLE dbo.T ( ID INT IDENTITY(1, 1) NOT NULL CONSTRAINT …

6
Zmień tabelę w bazach danych produkcji na żywo
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Exchange Exchange Administrators Database Administrator. Migrował 7 lat temu . Jak większość „popularnych” systemów baz danych (MySQL, Postgres ...) obsługuje zmienianie tabel w bazach danych na żywo (takich jak dodawanie, usuwanie lub zmiana typu kolumn)? Wiem, …

7
Uzyskaj wiele kolumn z wybranego podzapytania
SELECT *, p.name AS name, p.image, p.price, ( SELECT ps.price FROM product_special ps WHERE p.id = ps.id AND ps.date < NOW() ORDER BY ps.priority ASC, LIMIT 1 ) AS special_price, ( SELECT ps.date FROM product_special ps WHERE p.id = ps.id AND ps.date < NOW() ORDER BY ps.priority ASC, LIMIT 1 …
24 subquery 


1
Plan wykonania pokazuje kosztowną operację CONVERT_IMPLICIT. Czy mogę to naprawić za pomocą indeksowania, czy muszę zmienić tabelę?
Mam naprawdę ważne, bardzo powolne spojrzenie, które obejmuje niektóre naprawdę brzydkie warunki, takie jak ten w klauzuli where. Zdaję sobie również sprawę, że sprzężenia są łączeniami brutto i powolnymi varchar(13)zamiast pól liczb całkowitych, ale chciałbym ulepszyć proste zapytanie poniżej, które korzysta z tego widoku: CREATE VIEW [dbo].[vwReallySlowView] AS AS SELECT …
24 sql-server  view 

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.