Itzik Ben-Gan

Itzik
Ben-Gan

Itzik Ben-Gan is a contributing editor to SQL Server Pro and a cofounder of SolidQ. He teaches, lectures, and consults internationally. He's a SQL Server MVP and is the author of several books about T-SQL, including Microsoft SQL Server 2012 High-Performance T-SQL Using Window Functions (Microsoft Press).

Check out Itzik's Puzzled by T-SQL blog.
Twitter: @ItzikBenGan

Articles
interval graph
T-SQL Interval Graphs Challenge, Part 1
Itzik Ben-Gan uses T-SQL to find an efficient solution to an interval packing problem related to drug prescriptions modeled as interval graphs.
Identifying a Subsequence in a Sequence, Part 2 4
Itzik Ben-Gan explores three set-based T-SQL solutions to find the best approach for identifying a subsequence within a sequence.
DNA strands representing iterative solution to finding subsequence in sequence
Identifying a Subsequence in a Sequence, Part 1 7
Itzik Ben-Gan explores several iterative T-SQL solutions to find the best approach for identifying a subsequence within a sequence.
Infinite loop to represent the SQL Server Halloween problem
Divide and Conquer Halloween
Query plans of T-SQL solutions based on the Decrease and Conquer algorithm contain extra work to deal with Halloween protection. Itzik presents an alternative generic pattern that removes the need for Halloween protection.
abstract clock
Intervals and Counts, Part 4
Learn how to compute the count of active intervals at the beginning of every fixed interval.
men on track running intervals with stopwatch
Intervals and Counts, Part 3
Many types of tasks involve handling date and time intervals and computing related counts. Learn how to compute the maximum count of concurrent sessions during every fixed interval within a certain input period.
IT/Dev Connection conference logo
T-SQL Querying and Query Tuning Full-Day Seminar at IT/Dev Connections in Vegas, Sept. 30
Join me for a full-day workshop about T-SQL querying and query tuning improvements in the last major releases of SQL Server (2012, 2008 and 2005).
time interval
Intervals and Counts, Part 2
Itzik presents an improved solution to last month's task using the APPLY operator for computing counts during discrete intervals, as well as a solution for computing counts during discrete intervals including packing logic.
intervals and counts
Intervals and Counts, Part 1
Learn how to identify discrete intervals and counts of overlapping source intervals.
Interval Queries in SQL Server 2
Interval-related queries tend to perform very inefficiently in SQL Server. Itzik presents an ingenious solution based on the Relational Interval Tree (RI-tree) model.
Unwanted T-SQL Expression Failures 1
Itzik discusses expression failures in T-SQL queries and presents a proposal to Microsoft for a new T-SQL feature called TRY_EXPRESSION that would provide a more general solution for preventing expression failures.
COALESCE vs. ISNULL
Some differences between the COALESCE and ISNULL functions make COALESCE preferable, whereas others make ISNULL preferable. Learn the differences, to make an educated decision about which to use.
Copying Data with Dependencies 2
Itzik uses a simple generic data model to demonstrate how to copy data from one set of related tables to another, including dependent rows, while preserving the correct relationships between the rows.
CTEs with Multiple Recursive Members, Part 2
Itzik explains how to use a recursive CTE with multiple recursive members to draw a Koch snowflake.
CTEs with Multiple Recursive Members 2
Itzik provides two examples of CTEs with multiple recursive members: genealogy-related queries and the nested set model for representing graphs.

Digital Magazine Archives

Browse back issues of SQL Server Pro, from January 2007 through the last issue published in April 2014. Find the back issues here.

 

From the Blogs
Feb 25, 2015
Commentary

Data Profiling to the Rescue by Pushing Metadata Boundaries

Don’t let bad data sneak up on you when and where you least expect it. Ferret out bad data with Melissa Data’s newest Profiling Component for SSIS. Learn how to take control of your data using knowledge-base-driven metadata. The truth shall set you free!...More
Feb 16, 2015
blog

AlwaysOn Availability Groups and SQL Server Jobs, Part 18: Health Checks for Availability Groups 1

Now that we’ve outlined the process to let servers in a SQL Server AlwaysOn Availability Group "talk to each other" by means of setting up linked servers, it’s possible to set up some additional or improved checks on Availability Group Health....More
Feb 11, 2015
blog

AlwaysOn Availability Groups and SQL Server Jobs, Part 17: Creating Jobs to Check on Synchronization

In my previous post, I provided a high-level outline of the core logic (and rationale behind that logic) that would be needed to set up regular synchronization checks on SQL Server Agent Jobs for servers where AlwaysOn Availability Groups have been deployed. In this post, I’ll walk through the steps--and the code--needed to setup those checks....More
SQL Server Pro Forums

Get answers to questions, share tips, and engage with the SQL Server community in our Forums.

Sponsored Introduction Continue on to (or wait seconds) ×