Category: TSQL

SQLServerJoinElimination_00
SQL, SQL Server database, TSQL

JOIN Elimination czyli kilka słów o upraszczaniu zapytań przez SQL Server

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

W ostatnim czasie dostałem dosyć ciekawe pytanie w którym jego autor zapytał mnie o przykład zapytania w którym SQL Server nie łączył ze sobą tabel mimo, że takie złączenie zostało wyspecyfikowane w treści zapytania. Oczywiście coś takiego może mieć miejsce i nosi nazwę JOIN Elimination i może wystąpić w specyficznych warunkach. O tym kiedy i […]

SQLServerHAshbytes_00
SQL Server database, TSQL

Detekcja zmian w SQL SERVER przy pomocy funkcji haszującej HASHBYTES

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Ładowanie większej ilości danych na potrzeby hurtowni danych lub innego repozytorium danych jest czynnością powszechną i stanowi swego rodzaju standard. Tworząc procesy ładujące zazwyczaj powinniśmy starać się robić to w sposób przyrostowy czyli wybierać ze źródeł tylko te dane, które się zmieniły od ostatniego ładowania. Aby coś takiego osiągnąć pomocny może być szereg dodatkowych mechanizmów […]

SQLServerBatchModeOnRowstore_00
SQL, SQL Server database, TSQL

SQL Server 2019 – Intelligent Query Processing – Batch Mode on Rowstore

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

W dzisiejszym artykule kontynuujemy testy związane z Intelligent Query Processing – ostatnio udało się opisać testy związane ze Scalar Function Inlining dziś natomiast powiemy sobie parę słów o równie ciekawym mechanizmie jakim bez wątpienia jest Batch Mode on Rowstore. Zanim przejdziemy do demonstracji kilka faktów wprowadzających w omawianą funkcjonalność. Batch mode to nic innego jak […]

SQLInsertWhereNotExists_00
MSSQL, SQL Server database, TSQL

INSERT WHERE NOT EXISTS i minimalne logowanie

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

W ostatnim okresie w projekcie który aktualnie realizuję natrafiłem na dosyć ciekawy i specyficzny przypadek. Wiązał się on z procedurą napisaną w TSQL, która ładowała nowe rekordy do tabeli docelowej. Co w tym takiego ciekawego? A no to, że zachowywała się ona w dosyć nieprzewidywalny sposób i razem z kolegą (pozdrawiam Krzysiek!) próbowaliśmy rozszyfrować to […]

SQLServerExportBLOB_00
Integration Services, SQL Server database, TIPS, TSQL

Trzy sposoby na eksport obrazów z SQL Server

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Dziś powiemy sobie nieco o tym jak eksportować obiekty takie jak zdjęcia czy też ogólnie pojęte obiekty BLOB przechowywane w bazie danych do rzeczywistych fizycznych plików. Do tego celu wykorzystamy trzy różne techniki w postaci narzędzia bcp, skryptów OLE DB Automation oraz pakietów Integration Services. W tym miejscu chciałbym zaznaczyć, iż nie będziemy teorii ani […]

AdaptiveQueryProcessingMemoryGrantFeedback_000
SQL, SQL Server database, TSQL

Adaptive Query Processing – Memory Grant Feedback

Follow me
SQL geek, Data enthusiast, Consultant & Developer
Adrian Chodkowski
Follow me

Kontynuujemy naszą małą serię związaną z Adaptive Query Processing czyli elastycznym dostosowaniu zapytania w trakcie jego wykonania. Do tej pory udało mi się opisać dwa mechanizmy wchodzące w skład AQP i były to Interleaved Execution oraz Adaptive Join, dziś opowiemy sobie o kolejnym, który został wprowadzony w SQL Server 2017 i ulepszony w wersji SQL […]