Home > Database > Mysql Tutorial > How to Pivot a T-SQL Table Without Using Aggregate Functions?

How to Pivot a T-SQL Table Without Using Aggregate Functions?

Susan Sarandon
Release: 2025-01-20 09:57:09
Original
803 people have browsed it

How to Pivot a T-SQL Table Without Using Aggregate Functions?

T-SQL Pivot: No Aggregation Functions Needed

In some cases, you may need to convert data in a table to pivot format without using aggregate functions such as SUM or COUNT. This example shows a unique way to use the PIVOT operator when aggregate functions are not required.

Suppose there is a source table containing customer information:

CustomerID DBColumnName Data
1 FirstName Joe
1 MiddleName S
1 LastName Smith
1 Date 12/12/2009
2 FirstName Sam
2 MiddleName S
2 LastName Freddrick
2 Date 1/12/2009
3 FirstName Jaime
3 MiddleName S
3 LastName Carol
3 Date 12/1/2009

The target output is a pivot table showing customer information in separate columns:

CustomerID FirstName MiddleName LastName Date
1 Joe S Smith 12/12/2009
2 Sam S Freddrick 1/12/2009
3 Jaime S Carol 12/1/2009

To achieve this without using aggregate functions, you can use the following T-SQL query:

<code class="language-sql">SELECT CustomerID,
       MIN(CASE DBColumnName WHEN 'FirstName' THEN Data END) AS FirstName,
       MIN(CASE DBColumnName WHEN 'MiddleName' THEN Data END) AS MiddleName,
       MIN(CASE DBColumnName WHEN 'LastName' THEN Data END) AS LastName,
       MIN(CASE DBColumnName WHEN 'Date' THEN Data END) AS Date
  FROM table
 GROUP BY CustomerId;</code>
Copy after login

This query uses the MIN function in a CASE statement to select the minimum value for each column based on DBColumnName. The "GROUP BY" clause is used to group the results by CustomerID.

While this approach may appear unwieldy and inefficient compared to using aggregate functions, it can provide greater flexibility in certain situations where aggregate functions are not appropriate (such as when dealing with unique or distinct values) sex. Be sure to evaluate the specific needs of your query and choose the most appropriate approach for the given situation.

The above is the detailed content of How to Pivot a T-SQL Table Without Using Aggregate Functions?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template