我对SQL很新颖。但真的很想学习。但是,我真的有一些工作需要去做(有些人会被抛弃)。但我不断遇到路障。我需要创建一个始终具有来自此创建的存储过程的更新信息的表。我最初尝试加入表格等,但无法获得我需要的确切数据。迄今为止我发现的至少收集正确数据的最佳方式是使用此存储过程。不过,这里还有另一个路障;把它放在桌子上。我需要一个表的原因是因为外部应用程序(正在为我们的位置开发的应用程序)需要有此表来查看特定信息。它会每天多次查看此表,因为数据可能会发生变化。如果有任何帮助或建议可能会导致我需要解决方案,我将不胜感激。先谢谢你。是否可以通过存储过程结果创建“永久”表
这里是我现在的存储过程。 (我的爱已经能够只使用它来创建一个视图,但我当然不能因为变量声明的)
DECLARE @now DATETIME
SET @now = CONVERT(VARCHAR(8),GETDATE(),108)
IF @now BETWEEN '06:40:00' AND '14:39:59'
SELECT t.ProductionDate, t.Shift, t.LineNumber, t.Cart, t.CavityPosition, t.ProgramNumber, t.PartNumber,t.Cavity
FROM tblTransactionDetail t
JOIN tblLPCurrentOnline c
on t.Cart=c.Fixture
AND t.ProgramNumber=c.Program
AND t.LineNumber=c.Linenumber
WHERE Shift = 1 and PartNumber <>''
ELSE IF @now BETWEEN '14:40:00' AND '22:39:59'
SELECT t.ProductionDate, t.Shift, t.LineNumber, t.Cart, t.CavityPosition, t.ProgramNumber, t.PartNumber,t.Cavity
FROM tblTransactionDetail t
JOIN tblLPCurrentOnline c
on t.Cart=c.Fixture
AND t.ProgramNumber=c.Program
AND t.LineNumber=c.Linenumber
WHERE Shift = 2 AND PartNumber <>''
ELSE IF @now BETWEEN '22:40:00' AND '24:59:59' OR @now BETWEEN '00:00:00' AND '06:39:59'
SELECT t.ProductionDate, t.Shift, t.LineNumber, t.Cart, t.CavityPosition, t.ProgramNumber, t.PartNumber,t.Cavity
FROM tblTransactionDetail t
JOIN tblLPCurrentOnline c
on t.Cart=c.Fixture
AND t.ProgramNumber=c.Program
AND t.LineNumber=c.Linenumber
WHERE Shift = 3 AND PartNumber <>''
对不起,这将有助于如果我愿意的说我在用。这是SQL Server 2005.我看到你说关于使存储过程检查以查看表是否存在等等。但是,这需要一些必须运行存储过程的权利?我无法自动设置一些如何?我问的原因是因为这个正在为我们创建的程序正在寻找表格数据。所以当程序检查它时,我会希望该表格呈现准确。或者,也许这不是要走的路? – user1288964 2012-03-23 21:40:49