记得 2002 年前后在 IBM TSC 作 IBM i 800 热线电话支持的时候,曾经写过一篇 TIPS ,介绍了如何在 SQL 语句的执行结果中加入颜色相关的属性以提高辨识度。经过的时间比较久了,现在翻出来整理一下供大家参考。
STRSQL 中的 STRSQL 绿屏输出结果的颜色比较单一,通常是绿屏界面,为了增加辨识度,可以在 SQL 查询语句中加入颜色属性以区分不同类型的结果。
常用的颜色属性有以下 28 种可供选择。
(*GREEN X'20')
(*GREEN_REVERSE X'21')
(*WHITE X'22')
(*WHITE_REVERSE X'23')
(*GREEN_UNDERSCORE X'24')
(*GREEN_UNDERSCORE_REVERSE X'25')
(*WHITE_UNDERSCORE X'26')
(*RED X'28')
(*RED_REVERSE X'29')
(*RED_BLINK X'2A')
(*RED_REVERSE_BLINK X'2B')
(*RED_UNDERSCORE X'2C')
(*RED_UNDERSCORE_REVERSE X'2D')
(*RED_UNDERSCORE_BLINK X'2E')
(*TURQUOISE X'30')
(*TURQUOISE_REVERSE X'31')
(*YELLOW X'32')
(*YELLOW_REVERSE X'33')
(*TURQUOISE_UNDERSCORE X'34')
(*TURQUOISE_UNDERSCORE_REVERSE X'35')
(*YELLOW_UNDERSCORE X'36')
(*PINK X'38')
(*PINK_REVERSE X'39')
(*BLUE X'3A')
(*BLUE_REVERSE X'3B')
(*PINK_UNDERSCORE X'3C')
(*PINK_UNDERSCORE_REVERSE X'3D')
(*BLUE_UNDERSCORE X'3E')
现在举个例子来具体说明用法:
执行查询语句。
select sid,grade,
case
when grade>=90 then (X'2a'||'Excellence'||X'28')
when grade>=70 and grade <90 then (X'38'||'Good')
when grade>=60 and grade <70 then (X'22'||'Pass')
when grade<60 then (X'23'||'Not Pass')
else 'Not pass'
end as grade_class
from xqlib/stu
在查询结果中加入一列用来对 grade 分数划分等级进行分类显示,执行结果如下图所示, grade 高于 90 分的用闪烁的红色显示; grade 在 70 到 90 之间的用红色显示; grade 在 60 到 70 之间的用高亮显示, grade 小于 60 分的白色反显。
仅供参考
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞2
添加新评论0 条评论