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
databases
Sequence and Identity Performance
Learn how SQL Server handles caching for sequence and identity, as well as how to determine the optimal cache size for your environment.
warehouse inventory
T-SQL Challenges: Replenishing and Depleting Quantities
Itzik discusses two T-SQL challenges: replenishing quantities and depleting quantities. He presents an efficient solution for replenishing quantities and challenges you to find an efficient solution for depleting quantities.
optimize
Optimization Tips for Multiple Range Predicates, Part 3
Itzik dives even deeper into the problem of using multiple predicates in your query filters.
sequence
Identifying a Subsequence in a Sequence, Part 3 2
Itzik Ben-Gan presents two reader-submitted solutions for identifying a subsequence within a sequence, both of which far surpass his original solutions.
SQL spelled out on keyboard
Optimization Tips for Multiple Range Predicates, Part 2 1
Itzik covers three practical examples affected by the multiple range predicate problem, as well as optimization tips to improve performance.
SQL database code
Optimization Tips for Multiple Range Predicates, Part 1
Multiple range predicates can be the source of query performance problems. Itzik presents some tips for optimizing your solutions.
prescription drugs
T-SQL Interval Graphs Challenge, Part 2 1
In Part 2 of this article, Itzik Ben-Gan uses T-SQL to provide the complete solution to an interval packing problem related to drug prescriptions modeled as interval graphs.
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.

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
business people around a table and laptop
Oct 9, 2014
blog

AlwaysOn Availability Groups and SQL Server Jobs, Part 10: Dynamic Detection Gotcha #3

You can interject a SQL Server Job Step into your Jobs and have this new/injected Job Step do some checking for you. Here's a look at everything that’s involved in such an approach....More
Man holding a piece of paper with the word GOTCHA
Oct 7, 2014
blog

AlwaysOn Availability Groups and SQL Server Jobs, Part 9: Dynamic Detection Gotcha #2 3

Given that a USE statement is parsed before code is actually run, there are a few options that could be used as a around when it comes to detecting whether or not code should be run....More
iceberg
Oct 2, 2014
blog

AlwaysOn Availability Groups and SQL Server Jobs, Part 8: Dynamic Detection Gotcha #1 1

Learn about why the option of dynamically detecting whether or not to run a SQL Server Job at execution time is quite a bit more problematic than you might think....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) ×