SQL Query Using Cursor and table variable(使用游标和表变量的 SQL 查询)
问题描述
输入表有数据,结果表读取输入表的所有数据,检查Name列的长度,打印结果表中<=5的长度
Input table is having data and result table should read all the data from input table and check the length of Name column and should print the length which is <=5 in result table
在此处输入图片说明在此处输入图片描述
你能否建议使用循环(IF else)......比如使用条件读取数据,即<=5,并通过插入语句将其存储在临时表变量中,并通过使用最终选择语句我们得到输出...请帮忙
can you please suggest using loops (IF else) ...like reading the data using conditions i.e. <=5, and by insert statement storing it in a temporary table variable and by using final select statement we are getting the output... plz help
推荐答案
只需使用 LEN() 函数和 case 表达式:
Just use LEN() function with case expression :
select t.id,
(case when len(name) <= 5
then concat(name, '_', len(name))
else name
end) as name,
age
from table t
这篇关于使用游标和表变量的 SQL 查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:使用游标和表变量的 SQL 查询
基础教程推荐
- 带有WHERE子句的LAG()函数 2022-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 从字符串 TSQL 中获取数字 2021-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- 带更新的 sqlite CTE 2022-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
