Arithmetic

SQLServerCentral Article

Optimize Your SQL by Reformulating the Spec

  • Article

As SQL developers, we tend to think of performance tuning in terms of crafting the best table indices, avoiding scalar and table valued functions, and analyzing query plans (among other things). But sometimes going back to the spec and applying some properties of elementary math can be the best way to begin to improve performance of SQL queries which implement mathematical formulas. This article is a case study of how I used this technique to optimize my SQL implementation of the Inverse Simpson Index.

5 (3)

You rated this post out of 5. Change rating

2021-05-07 (first published: )

5,374 reads

Blogs

Securing Kubernetes With External Secrets Operator on AWS

By

Here’s a way to centralize management, rotate secrets conveniently without downtime, automate synchronization and...

Save Azure PostgreSQL Backup to Storage

By

This may or may not be helpful in the long term, but since I’m...

The Book of Redgate: What’s Great about Redgate?

By

“I’m sick of hearing about Red Gate.” The first article in the book has...

Read the latest Blogs

Forums

Dynamic T-SQL Script Parameterization Using Python

By omu

Comments posted to this topic are about the item Dynamic T-SQL Script Parameterization Using...

Collation related issues

By LearningDBA

I have read that the collation at the instance level cannot be changed. I...

getting started paas SSAS

By stan

hi our on prem STD implementation of SSAS currently occupies about 3.6 gig of...

Visit the forum

Question of the Day

Multiple Sequences

In SQL Server 2022, I run this code:

CREATE SEQUENCE myseqtest START WITH 1 INCREMENT BY 1;
GO
CREATE TABLE NewMonthSales
  (SaleID    INT
  , SecondID int
 , saleyear  INT
 , salemonth TINYINT
 , currSales NUMERIC(10, 2));
GO
INSERT dbo.NewMonthSales
  (SaleID, SecondID, saleyear, salemonth, currSales)
SELECT
  NEXT VALUE FOR myseqtest
, NEXT VALUE FOR myseqtest
, ms.saleyear
, ms.salemonth
, ms.currMonthSales
FROM dbo.MonthSales AS ms;
GO
SELECT * FROM dbo.NewMonthSales AS nms

Assume the dbo.MonthSales table exists. If I run this, what happens?

See possible answers