T-SQL insiders help you tackle your toughest queries and query-tuning problems Squeeze maximum performance and efficiency from every T-SQL query you write or tune. Four leading experts take an in-depth look at T-SQL’s internal architecture and offer advanced practical techniques for optimizing response time and resource usage. Emphasizing a correct understanding of the language and its foundations, the authors present unique solutions they have spent years developing and refining. All code and techniques are fully updated to reflect new T-SQL enhancements in Microsoft SQL Server 2014 and SQL Server 2012. Write faster, more efficient T-SQL code: Move from procedural programming to the language of sets and logic Master an efficient top-down tuning methodology Assess algorithmic complexity to predict performance Compare data aggregation techniques, including new grouping sets Efficiently perform data-analysis calculations Make the most of T-SQL’s optimized bulk import tools Avoid date/time pitfalls that lead to buggy, poorly performing code Create optimized BI statistical queries without additional software Use programmable objects to accelerate queries Unlock major performance improvements with In-Memory OLTP Master useful and elegant approaches to manipulating graphs About This Book For experienced T-SQL practitioners Includes coverage updated from Inside Microsoft SQL Server 2008 T-SQL Querying and Inside Microsoft SQL Server 2008 T-SQL Programming Valuable to developers, DBAs, BI professionals, and data scientists Covers many MCSE 70-464 and MCSA/MCSE 70-461 exam topics
Take a detailed look at the internal architecture of T-SQL--and unveil the power of set-based querying--with comprehensive reference and advice from the experts. Database developers and administrators get best practices, sample databases, and code to master the intricacies of the programming language--solving complex problems with real-world solutions. Discover how to: Understand logical and physical query processing Apply a methodology to optimize query tuning Solve relational division problems Use CTEs and ranking functions to simplify and optimize solutions Aggregate data with various techniques, including tiebreakers, pivoting, histograms, and grouping factors Use the TOP option in a query to modify data Query specialized data structures with recursive logic, materialized path, or nested sets solutions PLUS--Improve your logic and get to the heart of querying problems with logic puzzles Get code and database samples on the Web
Tackle the toughest set-based querying and query tuning problems—guided by an author team with in-depth, inside knowledge of T-SQL. Deepen your understanding of architecture and internals—and gain practical approaches and advanced techniques to optimize your code’s performance. Discover how to: Move from procedural programming to the language of sets and logic Optimize query tuning with a top-down methodology Assess algorithmic complexity to predict performance Compare data-aggregation techniques, including new grouping sets Manage data modification—insert, delete, update, merge—for performance Write more efficient queries against partitioned tables Work with graphs, trees, hierarchies, and recursive queries Plus—Use pure-logic puzzles to sharpen your problem-solving skills
Apply powerful window functions in T-SQL—and increase the performance and speed of your queries Optimize your queries—and obtain simple and elegant solutions to a variety of problems—using window functions in Transact-SQL. Led by T-SQL expert Itzik Ben-Gan, you’ll learn how to apply calculations against sets of rows in a flexible, clear, and efficient manner. Ideal whether you’re a database administrator or developer, this practical guide demonstrates ways to use more than a dozen T-SQL querying solutions to address common business tasks. Discover how to: Go beyond traditional query approaches to express set calculations more efficiently Delve into ordered set functions such as rank, distribution, and offset Implement hypothetical set and inverse distribution functions in standard SQL Use strategies for improving sequencing, paging, filtering, and pivoting Increase query speed using partitioning, ordering, and coverage indexing Apply new optimization iterators such as Window Spool Handle common issues such as running totals, intervals, medians, and gaps
Master the foundations of T-SQL with the right balance of conceptual and practical content. Get hands-on guidance—including exercises and code samples—that show you how to develop code to query and modify data. You’ll gain a solid understanding of the T-SQL language and good programming practices, and learn to write more efficient and powerful queries. Discover how to: Apply T-SQL fundamentals, create tables, and define data integrity Understand logical query processing Query multiple tables using joins and subqueries Simplify code and improve maintainability with table expressions Explore pivoting techniques and how to handle grouping sets Write code that modifies data Isolate inconsistent data and address deadlock and blocking scenarios
Gain a solid understanding of T-SQL—and write better queries Master the fundamentals of Transact-SQL—and develop your own code for querying and modifying data in Microsoft SQL Server 2012. Led by a SQL Server expert, you’ll learn the concepts behind T-SQL querying and programming, and then apply your knowledge with exercises in each chapter. Once you understand the logic behind T-SQL, you’ll quickly learn how to write effective code—whether you’re a programmer or database administrator. Discover how to: Work with programming practices unique to T-SQL Create database tables and define data integrity Query multiple tables using joins and subqueries Simplify code and improve maintainability with table expressions Implement insert, update, delete, and merge data modification strategies Tackle advanced techniques such as window functions, pivoting and grouping sets Control data consistency using isolation levels, and mitigate deadlocks and blocking Take T-SQL to the next level with programmable objects
A guide to developing efficient and elegant T-SQL code
Author: Pedro Lopes
Publisher: Packt Publishing Ltd
Troubleshoot query performance issues, identify anti-patterns in code, and write efficient T-SQL queries Key Features Discover T-SQL functionalities and services that help you interact with relational databases Understand the roles, tasks and responsibilities of a T-SQL developer Explore solutions for carrying out database querying tasks, database administration, and troubleshooting Book Description Transact-SQL (T-SQL) is Microsoft's proprietary extension to the SQL language that is used with Microsoft SQL Server and Azure SQL Database. This book will be a useful guide to learning the art of writing efficient T-SQL code in modern SQL Server versions, as well as the Azure SQL Database. The book will get you started with query processing fundamentals to help you write powerful, performant T-SQL queries. You will then focus on query execution plans and learn how to leverage them for troubleshooting. In the later chapters, you will learn how to identify various T-SQL patterns and anti-patterns. This will help you analyze execution plans to gain insights into current performance, and determine whether or not a query is scalable. You will also learn to build diagnostic queries using dynamic management views (DMVs) and dynamic management functions (DMFs) to address various challenges in T-SQL execution. Next, you will study how to leverage the built-in tools of SQL Server to shorten the time taken to address query performance and scalability issues. In the concluding chapters, the book will guide you through implementing various features, such as Extended Events, Query Store, and Query Tuning Assistant using hands-on examples. By the end of this book, you will have the skills to determine query performance bottlenecks, avoid pitfalls, and discover the anti-patterns in use. What you will learn Use Query Store to understand and easily change query performance Recognize and eliminate bottlenecks that lead to slow performance Deploy quick fixes and long-term solutions to improve query performance Implement best practices to minimize performance risk using T-SQL Achieve optimal performance by ensuring careful query and index design Use the latest performance optimization features in SQL Server 2017 and SQL Server 2019 Protect query performance during upgrades to newer versions of SQL Server Who this book is for This book is for database administrators, database developers, data analysts, data scientists, and T-SQL practitioners who want to get started with writing T-SQL code and troubleshooting query performance issues, through the help of practical examples. Previous knowledge of T-SQL querying is not required to get started on this book.
Take a detailed look at the internal architecture of T-SQL—and unveil the power of set-based querying—with comprehensive reference and advice from the experts. Database developers and administrators get best practices, sample databases, and code to master the intricacies of the programming language—solving complex problems with real-world solutions. Discover how to: Understand logical and physical query processing Apply a methodology to optimize query tuning Solve relational division problems Use CTEs and ranking functions to simplify and optimize solutions Aggregate data with various techniques, including tiebreakers, pivoting, histograms, and grouping factors Use the TOP option in a query to modify data Query specialized data structures with recursive logic, materialized path, or nested sets solutions PLUS—Improve your logic and get to the heart of querying problems with logic puzzles Get code and database samples on the Web
Get a detailed look at the internal architecture of T-SQL with this comprehensive programming reference. Database developers and administrators get best practices, expert techniques, and code samples to master the intricacies of this programming language—solving complex problems with real-world solutions. Discover how to: Work with T-SQL and CLR user-defined functions, stored procedures, and triggers. Handle transactions, concurrency, and error handling. Efficiently use temporary objects, including temporary tables, table variables, and table expressions. Evaluate when to use set-based programming techniques and when to use cursors. Work with dynamic SQL in an efficient and secure manner. Treat date- and time-related data in a robust manner. Develop CLR user-defined types and learn about temporal support in the relational model. Use XML and XQuery and implement a dynamic schema solution. Work with spatial data using the new geometry and geography types and spatial indexes. Track access and changes to data using extended events, SQL Server Audit, change tracking, and change data capture. Use Service Broker for controlled asynchronous processing in database applications. All the book’s code samples will be available for download from the companion Web site.
If you've not programmed with Transact-SQL, this book is for you.It begins with an overview of SQL Server query operations and tools used with T-SQL, and covers both the 2005 and 2008 releases of SQL Server query tools and the query editor. The book then moves to show you how to design and build applications of increasing complexity. Other important tasks covered include full text indexing, optimizing query performance, and application design and security considerations. The companion website also provides all of the code examples from the book.