Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何将多个查询合并到一个查询中?而不是一个接一个地运行它们? UPDATE[Table]SET[Table].[Rating]='A-' 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([表].[字段4])否) 更新[表格]设置[表格].[评级]=“B” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“C” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([Table].[Field3])='No') 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“D” 其中((([Table].[Field1])为“否” 和([Table].[Field2])='No') 和(([Table].[Field3])='No') 和(([Table].[Field4])='No')_Sql_Ms Access - Fatal编程技术网

Sql 如何将多个查询合并到一个查询中?而不是一个接一个地运行它们? UPDATE[Table]SET[Table].[Rating]='A-' 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([表].[字段4])否) 更新[表格]设置[表格].[评级]=“B” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“C” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([Table].[Field3])='No') 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“D” 其中((([Table].[Field1])为“否” 和([Table].[Field2])='No') 和(([Table].[Field3])='No') 和(([Table].[Field4])='No')

Sql 如何将多个查询合并到一个查询中?而不是一个接一个地运行它们? UPDATE[Table]SET[Table].[Rating]='A-' 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([表].[字段4])否) 更新[表格]设置[表格].[评级]=“B” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([表].[字段3])否) 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“C” 其中((([Table].[Field1])为“否” 和([Table].[Field2]“No”) 和(([Table].[Field3])='No') 和(([Table].[Field4])='No') 更新[表格]设置[表格].[评级]=“D” 其中((([Table].[Field1])为“否” 和([Table].[Field2])='No') 和(([Table].[Field3])='No') 和(([Table].[Field4])='No'),sql,ms-access,Sql,Ms Access,是的,这个答案应该会有帮助,使用临时表: 但是,我看不到您要更新的4个值之间的WHERE子句有任何差异。是否正确?查看是否可以使用带有语句的更新来根据您的标准分配评级值 将[表]更新为t 设置t.[额定值]= 转换 ( t、 字段2“否”和t.Field3“否”和t.Field4“否”,“A”, t、 字段2“否”和t.Field3“否”和t.Field4=“否”,“B”, t、 字段2'No'和t.Field3='No'和t.Field4='No','C', t、 Field2='No'和t.

是的,这个答案应该会有帮助,使用临时表:


但是,我看不到您要更新的4个值之间的WHERE子句有任何差异。是否正确?

查看是否可以使用带有语句的
更新来根据您的标准分配
评级值

将[表]更新为t
设置t.[额定值]=
转换
(
t、 字段2“否”和t.Field3“否”和t.Field4“否”,“A”,
t、 字段2“否”和t.Field3“否”和t.Field4=“否”,“B”,
t、 字段2'No'和t.Field3='No'和t.Field4='No','C',
t、 Field2='No'和t.Field3='No'和t.Field4='No','D'
)
哪里
t、 字段1“否”;

更新表格集合表格。[评级]=“A-”
其中(((表[Field1])为“否”和(表[Field2])为“否”)和((表[Field3])为“否”)和((表[Field4])为“否”)你的意思是你想要1个查询来获得相同的结果,或者你想要运行一个以上的结果吗?我一个一个地运行它们来进行收视率,我怎么能一个一个地运行它们呢?爱德华,这是在一个存储过程中完成的吗?为什么不考虑使用和<代码> I/St/<代码> <代码>其他/如果类型的语句。ne存储过程如果此字段=比做某事更重要的事情
…你需要提供一些上下文。用例是什么?你想做什么?我正在根据其他字段信息更新字段评级A或B或C或D。好的,如果所有4个字段都没有,那么评级为A,如果3个字段没有,1个字段=没有,那么评级为B,依此类推。好的,看起来是“t.Field1‘否’”这在所有四种情况下都是常见的,因此我将其放在
WHERE
子句中,并在
Switch
表达式中使用了其他3列条件。哎呀,再看看你问题中的SQL,我怀疑我是否正确。但希望它足够接近,可以让你改进。我不需要你做我的工作:)我只是想知道语法,thnx,我会尽量让你知道的
UPDATE [Table] SET [Table].[Rating] = 'A-'
WHERE ((([Table].[Field1])<>'No'
And     ([Table].[Field2])<>'No')
AND    (([Table].[Field3])<>'No')
AND    (([Table].[Field4])<>'No')


UPDATE [Table] SET [Table].[Rating] = 'B'
WHERE ((([Table].[Field1])<>'No'
And     ([Table].[Field2])<>'No')
AND    (([Table].[Field3])<>'No')
AND    (([Table].[Field4])='No')

UPDATE [Table] SET [Table].[Rating] = 'C'
WHERE ((([Table].[Field1])<>'No'
And     ([Table].[Field2])<>'No')
AND    (([Table].[Field3])='No')
AND    (([Table].[Field4])='No')

UPDATE [Table] SET [Table].[Rating] = 'D'
WHERE ((([Table].[Field1])<>'No'
And     ([Table].[Field2])='No')
AND    (([Table].[Field3])='No')
AND    (([Table].[Field4])='No')