我的表中有一列,我想用从4个值数组中随机选择的文本更新每一行数组={value1,value2,value3,value4}是否有一个查询从数组中选择一个随机值d=然后更新字段?
我通过每次使用不同的值运行下面的查询4次来绕过它,以覆盖所有4个值{value1,value2,value3,value4}
DECLARE @Counter INT , @Rand INT
SET @Counter=1
SET @Rand= FLOOR(RAND()*(1476-1+1))+1
WHILE ( @Counter <= 400)
BEGIN
update Table set ConfidentialityLevel = 'Value1' where ID = @Rand
print @Rand
SET @Rand= FLOOR(RAND()*(1476-1+1))+1
SET @Counter = @Counter + 1
END
我建议在一次更新中执行此操作:
with vals as (
select v.val, count(*) over () as num_vals,
row_number() over (order by val) - 1 as seqnum
from (values ('val1'), ('val2'), ('val3'), ('val4')) v(val)
)
update t
set t.d = v.val
from (select t.*,
row_number() over (order by newid()) - 1 as seqnum
from t
) t join
vals
on vals.seqnum = t.seqnum % vals.cnt;
问题内容: 我有以下查询,仅在它们为空时才在其中更新值。 是否可以将所有这些都放入单个查询中? 和 问题答案: 您可以尝试: 尽管它可能会触发更新触发器,即使对于实际上未更改的行也是如此。
我有一张像下面这样的桌子, ID姓名电子邮件性别 这个表中已经有了一些值。 现在,我用下面的查询来添加年龄。 alter table tblPerson add Age int 现在,我的行结构看起来像 ID姓名电子邮件性别年龄 现在,我有了年龄表。有任何查询可以将这些年龄添加到新创建的列中吗? 所有年龄都是根据ID排序的。因此,如果需要逻辑,则不需要。我只需要添加列数据。 谢谢
问题内容: 我创建了一个SQL查询,该查询更新了一个表列,其中另一列=值 代码: 问题出在。如何使其使用这些ID更新列? 问候。 问题答案: 替换为
问题内容: 我一直在谷歌上寻找答案,但似乎找不到一个万无一失的东西,而且真的负担不起将其弄乱(进入生产站点)。 我所拥有的是具有20多个过滤器的高级搜索,它返回一个包含ID和Distance的数组。我需要做的是将这些结果混洗以每次随机显示。目前我得到的数组是: 我需要做的是每次都对它们进行随机化或排序,但要保持id和距离对,即: 谢谢 :) 问题答案: 在第一个用户后下的文件: 在保留键,值对的同
问题内容: 我想更新一个字典中的值,该值只能由字典中的另一个值来标识。也就是说,鉴于此输入: 我想将伴随格式更改为“ csv”: 我发现这可行: 但这似乎很冗长,所以我想知道是否有一种更优雅的方式来表达这一点。jq似乎缺少某种表达式选择器,等效于xpath。 (当我开始这个问题时,我发现了,所以并没有我想的那么糟。) 问题答案: 您要寻找的是一项复杂的任务: 也许不短,但是根据要求它更优雅。请参阅
问题内容: 我想从已更新的行中获取列的OLD值-无需使用触发器(也无需使用存储过程,也无需使用任何其他额外的非-SQL / -query实体)。 我有这样的查询: 如果我可以在子查询的末尾做这件事,那真是太了不起了(并解决了我的其他问题/问题)。但这是行不通的:不能将其与GROUP BY(这对于计算计数是必需的)结合使用。然后,我可以采用那些的值,并先执行查询以获取(即将被)以前的processi