Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.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
C# 如何将变量(sql变量)的最大数量限制为100_C#_Sql_Asp.net - Fatal编程技术网

C# 如何将变量(sql变量)的最大数量限制为100

C# 如何将变量(sql变量)的最大数量限制为100,c#,sql,asp.net,C#,Sql,Asp.net,我有一个视图表,其中包含以下内容 CAST(ROUND(SUM(dbo.TR.Score * 100) AS int) AS ScoreReached 我想把分数限制在100分以内,不能超过100分 我可以这样做吗 SELECT TOP 100 CAST(ROUND(SUM(dbo.TR.Score * 100) AS int) AS ScoreReached FROM MyTable 如果我没弄错你的问题。 这是TSQL的语法,您可以检查其他语法 如果我没弄错你的问题。 这是TSQL的语法

我有一个视图表,其中包含以下内容

CAST(ROUND(SUM(dbo.TR.Score * 100) AS int) AS ScoreReached
我想把分数限制在100分以内,不能超过100分

我可以这样做吗

SELECT TOP 100 CAST(ROUND(SUM(dbo.TR.Score * 100) AS int) AS ScoreReached
FROM MyTable
如果我没弄错你的问题。 这是TSQL的语法,您可以检查其他语法

如果我没弄错你的问题。 这是TSQL的语法,您可以检查其他语法。

您可以使用CASE。。。当语法约束ScoreReach列的值时

SELECT CASE 
         WHEN TBL.ScoreReached > 100 THEN 100 
         ELSE TBL.ScoreReached 
       END AS ScoreReached
FROM   (SELECT CAST(ROUND(SUM(dbo.TR.Score * 100), 0) AS INT) AS ScoreReached 
        FROM   <your table name>) TBL 
你可以使用这个案例。。。当语法约束ScoreReach列的值时

SELECT CASE 
         WHEN TBL.ScoreReached > 100 THEN 100 
         ELSE TBL.ScoreReached 
       END AS ScoreReached
FROM   (SELECT CAST(ROUND(SUM(dbo.TR.Score * 100), 0) AS INT) AS ScoreReached 
        FROM   <your table name>) TBL 

通过限制ScoreReach的数量,您的意思是要将查询返回的结果数量限制为前100个结果吗?如果没有,您能否为您的问题?视图或表格提供更多信息和上下文?这是两件不同的事情。。。。您可以在表上定义检查约束-例如,将允许的列值限制为0-100-通过这样做,使用此表的列和检查约束的任何视图也将仅显示0-100…hi的值,感谢您的回答。感谢@marc_,我的意思是,如果变量大于等于100,那么它会自动变为100。这不是一个变量,而是一个表或视图列…通过限制ScoreReach的数量,您的意思是要限制查询返回到前100个结果的结果数量吗?如果没有,您能否为您的问题?视图或表格提供更多信息和上下文?这是两件不同的事情。。。。您可以在表上定义检查约束-例如,将允许的列值限制为0-100-通过这样做,使用此表的列和检查约束的任何视图也将仅显示0-100…hi的值,感谢您的回答。感谢@marc_,我的意思是,如果变量大于等于100,那么它会自动变为100。我想在视图表中执行它。这不是一个变量-它是一个表或视图列。。。