Dates clusterfuck: MSSQL vs Excel

Dates are usually the most error-prone element of various computer systems. There are so many different date formats, standards and representations. On top of this there are different calendars, too. Overall one could probably get a PhD on the topic without even scratching the surface of it. Czytaj dalej Dates clusterfuck: MSSQL vs Excel

Pchełki SQL: małe – duże

Praca programisty jest – przynajmniej w teorii – fajna, prosta i przyjemna. Dostajemy projekt, dostajemy dokumentację, z której jednoznacznie wynika co mamy na wejściu i co chcemy dostać na wyjściu, siadamy, piszemy kod, testujemy kod, prosimy kilku użytkowników, żeby przetestowali wyniki i jak wszyscy są zadowoleni, wrzucamy kod do ogólnego użytku, wystawiamy fakturę i voila, gotowe.

A zaraz potem przybiega pierdzący tęczą jednorożec w towarzystwie reniferów, Świętego Mikołaja i uczciwego polityka… Czytaj dalej Pchełki SQL: małe – duże

Pchełki SQL: Drobiazg, a cieszy

Dziś prościutki trick pomocny wszystkim piszącym duże ilości kodu SQL.

Jak wszyscy wiedzą[citation needed] w Visual Studio można tworzyć regiony kodu, czyli takie bloki, które automatycznie „dostają” na marginesie edytora ikonkę minusika w kwadraciku (po naszemu: minusa w kwadracie), umożliwiającą „zwinięcie” całego bloku do jednej linii. Czytaj dalej Pchełki SQL: Drobiazg, a cieszy

Pchełki SQL: LAG

Operatory analityczne są często traktowane po macoszemu przez padawanów sztuki SQL-owej. Czasem jednak potrafią one zaoszczędzić mnóstwo czasu. Dziś pokażę, jak działa operator LAG.

Jednym z klasycznych problemów, przed którymi staje większość programistów SQL, jest wykonanie zestawienia, w którym chcemy pokazać wartości z rekordu bieżącego wraz z wartościami z rekordu poprzedniego, w jednym rekordzie.

Typowym podejściem jest tu utworzenie CTE z ROW_NUMBER(), a następnie wykonanie JOIN-a tego CTE z samym sobą po kolumnie ROW_NUMBER() z nią samą zmniejszoną o jeden. Czyli po naszemu tzw. self-join. Czytaj dalej Pchełki SQL: LAG