Multi-Column “Aggregation” MAX(), MIN(), COUNT() & Co with #SQLServer

It’s amazing to see how Microsoft keep on improving T-SQL. I was happily surprised to hear that GREATEST and LEAST are comming to Azure SQL Database from Version 2016 on… however only on Azure SQL. I’m currently ‘stuck’ with SqlServer 2017 on Premise (at least it is not any out of support version, like 2008R2)Continue reading “Multi-Column “Aggregation” MAX(), MIN(), COUNT() & Co with #SQLServer”

IDENTITY crisis — 3. Relational Distancing

After Part 1 and Part 2. I want to embark on a code review. Playing the pathologist, running a small diagnostic on the diagnose table and its friends. Relationaaaaaaah By the all mighty, we shall invoke SchemaSpy, and the picture should speak: I now feel so sad for diagnose. Quarantine measures? The only relation isContinue reading “IDENTITY crisis — 3. Relational Distancing”

string_agg() does not max alone — #SQLServer #SQLNewBlogger

… and that surely is for good reason when you check how the nvarchar(max)/varchar(max) family is treated. As I moved from PostgreSQL to SQL Server 2008R2 one of the things I missed the most were all the out of the box aggregation functions. And one of them was string_agg(). We migrated last year from 2008R2Continue reading “string_agg() does not max alone — #SQLServer #SQLNewBlogger”

Trigger the ORM

I’m not that a fan of ORM. Surely because I also don’t have to program with OOP language (C#, Java…). From the experience so far, it has mostly been a fight more than a cooperation. To be honest it may play well with the database but the software design decision are trickling down to theContinue reading “Trigger the ORM”

Sailing to a new DBMS

A first transition Before I started programming on SQL Server in 2018, I only developed with PostgreSQL. In the beginning I was trying to transfer the knowledge from one DBMS to the other. And so many piece were missing to me. I could no more enjoy ROLLBACK on DDL, multicolumn JOIN, awesome aggregation and windowContinue reading “Sailing to a new DBMS”