如何让以下内容出现在同一个表格中?是否有某种联接将它们串在一起?或者我可以将每个表声明为变量然后串起来吗?
--Description
SELECT Documents.Filename , VariableValue.ValueText, VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '56';
--Status
SELECT Documents.Filename , VariableValue.ValueText, VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '46';
--Revision
SELECT Documents.Filename , VariableValue.ValueText, VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '45';
答案 0 :(得分:2)
您可以使用INSERT INTO和UNION ALL组合
CREATE TABLE tableName (Filename VARCHAR(50),ValueText VARCHAR(50), VariableID INT);
INSERT INTO tableName
SELECT Documents.Filename , VariableValue.ValueText,
VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '56'
UNION ALL
SELECT Documents.Filename , VariableValue.ValueText,
VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '46'
UNION ALL
SELECT Documents.Filename , VariableValue.ValueText,
VariableValue.VariableID
FROM Documents
INNER JOIN VariableValue ON Documents.DocumentID = VariableValue.DocumentID
where RIGHT(filename,6) = 'SLDDRW' and VariableID = '45'
答案 1 :(得分:1)
我建议这种简化:
SELECT d.Filename, vv.ValueText, vv.VariableID
FROM Documents d INNER JOIN
VariableValue vv
ON d.DocumentID = vv.DocumentID
WHERE filename LIKE '%SLDDRW' and VariableID IN ('56', '46', '45');
注意:如果VariableID
是数字,那么您应该从值列表中删除单引号。