[英]how to replace T-SQL CASE statement with efficient code
我如何用有效的代码替换以下case语句
SELECT
CASE WHEN LEN(Code.Description)>=30
THEN left(Code.Description, 30) + '...'
ELSE NominalCode.Description END AS ShortDescription
FROM Code
因为返回的数据集将是30-50,000条记录,并且根据领导开发,此代码是荒谬的。 我需要帮助
大概您打算:
SELECT (CASE WHEN LEN(c.Description) > 30
THEN left(c.Description, 30) + '...'
ELSE c.Description
END) AS ShortDescription
FROM Code c;
也就是说,“ Description
列引用全部来自同一表。 您的代码很好。
但是,我将调整语义,以使所得的字符串始终具有相同的长度:
SELECT (CASE WHEN LEN(c.Description) > 30
THEN LEFT(c.Description, 27) + '...'
ELSE c.Description
END) AS ShortDescription
FROM Code c;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.