Subquery as one column : Group BY « Select Query « SQL Server / T-SQL

SQL Server / T-SQL
1. Aggregate Functions
2. Analytical Functions
3. Constraints
4. Cursor
5. Data Set
6. Data Type
7. Database
8. Date Timezone
9. Index
10. Insert Delete Update
11. Math Functions
12. Select Query
13. Sequence
14. Store Procedure Function
15. String Functions
16. Subquery
17. System
18. Table
19. Table Joins
20. Transact SQL
21. Transaction
22. Trigger
23. View
24. XML
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
SQL Server / T-SQL » Select Query » Group BY 
Subquery as one column


1create table employee(
2>     ID          int,
3>     name        nvarchar (10),
4>     salary      int,
5>     start_date  datetime,
6>     city        nvarchar (10),
7>     region      char (1))
8> GO
1>
2insert into employee (ID, name,    salary, start_date, city,       region)
3>               values (1,  'Jason', 40420,  '02/01/94', 'New York', 'W')
4> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (2,  'Robert',14420,  '01/02/95', 'Vancouver','N')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (3,  'Celia', 24020,  '12/03/96', 'Toronto',  'W')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (4,  'Linda', 40620,  '11/04/97', 'New York', 'N')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (5,  'David', 80026,  '10/05/98', 'Vancouver','W')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (6,  'James', 70060,  '09/06/99', 'Toronto',  'N')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (7,  'Alison',90620,  '08/07/00', 'New York', 'W')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (8,  'Chris', 26020,  '07/08/01', 'Vancouver','N')
3> GO

(rows affected)
1insert into employee (ID, name,    salary, start_date, city,       region)
2>               values (9,  'Mary',  60020,  '06/09/02', 'Toronto',  'W')
3> GO

(rows affected)
1>
2select from employee
3> GO
ID          name       salary      start_date              city       region
----------- ---------- ----------- ----------------------- ---------- ------
          Jason            40420 1994-02-01 00:00:00.000 New York   W
          Robert           14420 1995-01-02 00:00:00.000 Vancouver  N
          Celia            24020 1996-12-03 00:00:00.000 Toronto    W
          Linda            40620 1997-11-04 00:00:00.000 New York   N
          David            80026 1998-10-05 00:00:00.000 Vancouver  W
          James            70060 1999-09-06 00:00:00.000 Toronto    N
          Alison           90620 2000-08-07 00:00:00.000 New York   W
          Chris            26020 2001-07-08 00:00:00.000 Vancouver  N
          Mary             60020 2002-06-09 00:00:00.000 Toronto    W

(rows affected)
1>
2create table job(
3>     ID              int,
4>     title nvarchar  (10),
5>     averageSalary   int)
6> GO
1>
2>
3>
4insert into job(ID, title, averageSalaryvalues(1,'Developer',3000)
5> GO

(rows affected)
1insert into job(ID, title, averageSalaryvalues(2,'Tester', 4000)
2> GO

(rows affected)
1insert into job(ID, title, averageSalaryvalues(3,'Designer', 5000)
2> GO

(rows affected)
1insert into job(ID, title, averageSalaryvalues(4,'Programmer', 6000)
2> GO

(rows affected)
1>
2select from job
3> GO
ID          title      averageSalary
----------- ---------- -------------
          Developer           3000
          Tester              4000
          Designer            5000
          Programmer          6000

(rows affected)
1>
2SELECT ID
3>        , (SELECT Title FROM job
4>           WHERE Employee.ID = Job.ID)
5>             AS Title
6FROM Employee
7> GO
ID          Title
----------- ----------
          Developer
          Tester
          Designer
          Programmer
          NULL
          NULL
          NULL
          NULL
          NULL

(rows affected)
1>
2> drop table employee
3> GO
           
       
Related examples in the same category
1. GROUP BY clause with an aggregator 'SUM()'
2. Combine MIN function with group by
3. Combine MAX function with group by
4. GROUP BY builds different groups for all possible values (NULL, too!)
5. When grouping on more than one column, every unique combination of grouped values produces a row in the result set
6. Count() and Sum() with group by and column alias
7. Simple 'group by' demo
8. Count with 'group by'
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.