- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,我有一个对你们这些 Sql 高手来说可能很简单的问题...
给定一个 bool 值 T,如果 T 为真,我想用数据集 A 填充一个临时表,如果 T 为假,我想用数据集 B 填充一个临时表。我认为这将是如何做到的:
DECLARE @foo INT
SET @foo = null
IF (@foo is null)
BEGIN
SELECT 'foo was null' INTO #TempTable
END
ELSE
BEGIN
SELECT 'foo not null' INTO #TempTable
END
但这行不通。我收到一条错误消息,内容为“数据库中已经有一个名为‘#TempTable’的对象。”
显然,在评估条件之前,Sql 正在尝试在每种情况下创建表...?这对我来说似乎很奇怪,但是好吧......但是做这样的事情的正确方法是什么?
编辑:我在 Sql Server 中,但我怀疑这是一个更普遍的问题......但如果我错了,请告诉我。
最佳答案
为什么不使用基于集合而不是过程的解决方案:
SELECT CASE WHEN @foo is null
THEN 'foo was null'
ELSE 'foo not null'
END AS result
INTO #TempTable
关于sql - 如何选择如何在sql中填充#temptable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/777475/
SQL Server 中的#temptable 和##TempTable 有什么区别? 最佳答案 #table 指的是本地临时表 - 仅对创建它的用户可见 ##table 指的是全局临时表 - 对所有
好的,我有一个对你们这些 Sql 高手来说可能很简单的问题... 给定一个 bool 值 T,如果 T 为真,我想用数据集 A 填充一个临时表,如果 T 为假,我想用数据集 B 填充一个临时表。我认为
CREATE TABLE #TempProducts ( Id uniqueidentifier, ManufacturerId uniqueidentifier, Numbe
我接到一项任务,要检查某件商品的更改情况以及更改为哪些子产品。我的逻辑是:我将使用一个函数来检查我的资源已变成哪些子产品,并重新运行该函数,直到没有创建子产品。我希望为我搜索过的每个子产品都有一个临时
我正在尝试通过将多个查询组合到一个结果集中来为 Crystal Reports 编写一个存储过程(Crystal 不支持一个报告中的多个结果)。 我试图从两个表中获取组合列的结果集。 在 SP 中,我
我需要根据特定条件将记录的集合A或集合B插入#temptable中 我的伪代码: IF OBJECT_ID('tempdb..#t1') IS NOT NULL DROP TABLE #t1; IF
我只是从表中获取数据并将其插入#tempTable,然后删除数据,然后将其插入回表中。我收到“插入错误:列名称或提供的值的数量与表定义不匹配。”错误。 这是我正在运行的线路。 SELECT * INT
我有一个 MS SQL CTE 查询,我想从中创建一个临时表。我不知道该怎么做,因为它给出了 Invalid Object name 错误。 以下是整个查询供引用 SELECT * INTO TEMP
临时表未在数据库中创建。我验证了凭据有权创建临时表。复制并粘贴 SQL 命令,它可以在 SSMS 中使用。 调试时不会抛出异常。 cmd 变量在执行前具有正确的连接和 SQL 文本。 我已经在应用程序
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
我在 SQL-Server 上尝试了以下操作: create table #TmpLOGSPACE( DatabaseName varchar(100) , LOGSIZE_MB decima
在给定的不活动时间后,SQL Server 是否会自动清除它们,或者我是否需要担心自动清除它们?如果是这样,我如何查询要清除的表列表? 最佳答案 尽管连接终止时临时表会被删除,但通常仍认为显式删除此类
下面的代码只能将提供的文件中的 20000 个数字中的 226 个插入到 TEMPTABLE 的数字列中,然后抛出 [ java.sql.SQL.Exception:ORA-00604: erro
我有一个 SP。执行时出现错误 Cannot insert the value NULL into column 'USERNAME', table 'tempdb.dbo.#temptable___
除了创建临时表之外,还有一种优雅的方法可以在内联查询中选择随机列值 SELECT [Col1], [Col2], ChooseRandomlyFrom('Lateral',
我在使用以下语句时遇到错误。 Select name as ColumnName From tempdb.sys.columns where object_id = object_id('tempdb
我是一名优秀的程序员,十分优秀!