Quantcast
Channel: SQLServerCentral » SQL Server 2014 » Development - SQL Server 2014 » Latest topics
Viewing all articles
Browse latest Browse all 3145

Trying ot Create Table Dynamically Based on Data in a Column

$
0
0
I am trying to create an employee table that lists every employee in a column in a stored procedure. The issue is that the number of employees could change from run to run, so I am trying to figure out how I can do this.Here is some sample data:[code="sql"]IF OBJECT_ID('EmpCodes' ,'U') IS NOT NULL BEGIN DROP TABLE EmpCodes ENDCREATE TABLE EmpCodes (EmpCode VARCHAR(10))INSERT INTO EmpCodes SELECT 'D100'INSERT INTO EmpCodes SELECT 'D101'INSERT INTO EmpCodes SELECT 'D102'INSERT INTO EmpCodes SELECT 'E100'INSERT INTO EmpCodes SELECT 'E101'INSERT INTO EmpCodes SELECT 'E102'SELECT * FROM EmpCodes[/code]In this example, the code to create the table would be this:[code="sql"]CREATE TABLE Employees (D100 NVARCHAR(10), D101 NVARCHAR(10), D102 NVARCHAR(10), E100 NVARCHAR(10), E101 NVARCHAR(10), E102 NVARCHAR(10))[/code]However the next time the employee would look like this:[code="sql"]IF OBJECT_ID('EmpCodes' ,'U') IS NOT NULL BEGIN DROP TABLE EmpCodes ENDCREATE TABLE EmpCodes (EmpCode VARCHAR(10))INSERT INTO EmpCodes SELECT 'D100'INSERT INTO EmpCodes SELECT 'D101'INSERT INTO EmpCodes SELECT 'D102'INSERT INTO EmpCodes SELECT 'E100'INSERT INTO EmpCodes SELECT 'E101'INSERT INTO EmpCodes SELECT 'E102'INSERT INTO EmpCodes SELECT 'F100'INSERT INTO EmpCodes SELECT 'F101'INSERT INTO EmpCodes SELECT 'F102'SELECT * FROM EmpCodes[/code]Which would create this table:[code="sql"]CREATE TABLE Employees (D100 NVARCHAR(10), D101 NVARCHAR(10), D102 NVARCHAR(10), E100 NVARCHAR(10), E101 NVARCHAR(10), E102 NVARCHAR(10), F100 NVARCHAR(10), F101 NVARCHAR(10), F102 NVARCHAR(10))[/code]Does anyone have any ideas as to the best way this could be done?Thanks.

Viewing all articles
Browse latest Browse all 3145

Trending Articles