我想从带有CASE选项的表中选择一些记录 像这样
SELECT col1,col2,
CASE col2
WHEN '7c6014eb0000d37090d972c0ad2520f7' THEN 'xxxxx'
WHEN '5610d19400005469af3a78d225e11cb9' THEN 'aaaaa'
WHEN '31c08eb10000ye1aa51ff5a165246604' THEN 'bbbb'
WHEN '37e543fe00016d03007f6b304edfa94e' THEN 'ccccc'
WHEN '0ca1e79f0001zde1909b64c3d1246b80' THEN 'ddddd'
WHEN '25a14c480001g491c7284b0e107a39e7' THEN 'eeeee'
+500k line ....
END AS TargetAliasColumnName
FROM table
但是我有一个大脚本+ 500k记录的问题, 我刚刚(成功完成了命令。 ):/
更新:
hole脚本在执行区域中编译,但是执行后,我仅成功完成了Command。我的表名称是(帐户),表中有2列(用户,密码),表中有1百万条记录,我想选择表中所有这些记录,但要使用CASE密码记录
答案 0 :(得分:1)
SQL可能太大而无法编译。如果将案例值添加到表中,您将可以执行所需的操作。
tbl_case key_column,case_value
7c6014eb0000737090d972c0ad2520f7 xxxxx
SELECT table.key_value, tbl_case.case value
from table
join tbl_case on table.key_value = tbl_case.key_value; ----------
答案 1 :(得分:1)
最好创建表并将所有案例值对放入表中。
您可以使用 joins 实现目标。
答案 2 :(得分:0)
尝试一下,
创建另一个这样的表
CREATE TABLE [dbo].[Table_1](
[Col2] [nvarchar](50) NULL,
[CaseVal] [nchar](10) NULL
) ON [PRIMARY]
Insert all the Distinct data what you have. Then write a sql like below
SELECT b.Col1, b.Col2, a.CaseVal TargetAliasColumnName
FROM Table_1 a inner join [dbo].[Table1] b on
a.col2=b.Col2