SQL查询以实现输出 [英] SQL Query to achive the output
问题描述
亲爱的团队,
我有两个名为
的表
1.Table_Columns
2.Table_Employee
1."Table_Columns"具有一个名为"Columns"的列,并且具有值
Emp_ID
Emp_Name
总和(Emp_Salary)
以上所有值都在单列(名为"Columns")中
2."Table_Employee"具有以下名称为其名称的列
Dear Team,
I have two tables named
1.Table_Columns
2.Table_Employee
1."Table_Columns" has one column named "Columns" and it has values
Emp_ID
Emp_Name
Sum(Emp_Salary)
all above values are in single column(Named "Columns")
2."Table_Employee" has columns named below with their values
Emp_ID Emp_Name Emp_Salary
1 Sukhen 10000
2 Dass 20000
现在,我想编写一个查询来检索表"Table_Employee"中的所有那些列.
根据"Table_Columns"中定义的columnms
谢谢
苏肯·达斯
[edit]删除了喊话,添加了代码块-OriginalGriff [/edit]
Now i want to write a query to retrieve all those columns from table "Table_Employee"
on the basis of columnms defined in "Table_Columns"
Thanks
Sukhen Dass
[edit]SHOUTING removed, code block added - OriginalGriff[/edit]
推荐答案
我不确定我是否正确理解了您的问题.这是一个示例方法
I am not sure if i understood your question correctly. Here is a sample approach
CREATE TABLE #Table_Columns
(
Columns VARCHAR(50)
)
CREATE TABLE #Table_Employee
(
Emp_ID INT IDENTITY(1,1),
Emp_Name VARCHAR(50),
Emp_Salary INT
)
INSERT INTO #Table_Columns
SELECT 'Emp_ID' UNION ALL
SELECT 'Emp_Name' UNION ALL
SELECT 'Emp_Salary'
INSERT INTO #Table_Employee
SELECT 'Sukhen', 10000 UNION ALL
SELECT 'Dass', 20000
DECLARE @Columns VARCHAR(100)
SELECT @Columns = ISNULL(@Columns,'') + Columns + ', ' FROM #Table_Columns
IF @Columns <> ''
BEGIN
SELECT @Columns = SUBSTRING(@Columns, 1,LEN(@Columns)-1)
END
DECLARE @SQL VARCHAR(MAX)
SET @SQL = 'SELECT ' + @Columns + ' FROM #Table_Employee'
EXECUTE (@SQL)
DROP TABLE #Table_Columns
DROP TABLE #Table_Employee
这篇关于SQL查询以实现输出的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!