sql - 查询出一列数字字段的前3位
问题描述
我有一张桌子,国家:
loctn | area | people
abc | 12345 | 153465
cxv | 43566 | 388573
我正在寻找选择查询的输出,例如:
select area, people from Country where loctn='abc'
loctn | area | people
abc | 123 | 153
解决方案
从您的评论中,您实际上确实想除以 1000。您可以截断或获取下限值,使其成为整数 - 例如floor(area/1000)
- 如果需要,然后连接一个固定的字符串值。
-- sample data as a CTE
with country (loctn, area, people) as (
select 'abc', 12345, 153465 from dual
union all select 'cxv', 43566, 388573 from dual
union all select 'xyz', 134567 , 1234567 from dual
)
-- actual query
select loctn,
floor(area/1000) || 'K+' as area,
floor(people/1000) || 'K+' as people
from country;
LOCTN AREA PEOPLE
----- ---------- ----------
abc 12K+ 153K+
cxv 43K+ 388K+
xyz 134K+ 1234K+
或对于单个值类型,例如您问题中的查询:
select loctn,
floor(area/1000) || 'K+' as area,
floor(people/1000) || 'K+' as people
from country
where loctn = 'abc';
LOCTN AREA PEOPLE
----- ---------- ----------
abc 12K+ 153K+
这与您在评论中描述的输出(我认为)相匹配,而不是您在问题中显示的输出,但仍不清楚您真正想要什么。
推荐阅读
- node.js - 将 React 项目部署到 Heroku 时出错:package.json 的“没有这样的文件或目录”
- javascript - 在文本框中键入时,JavaScript/jquery 运行按钮按下事件
- python - Unable to import FuncAnimation in python for matplotlib animation
- c# - ItextSharp 在 PC 构建中生成 0 字节的 pdf 文件。在编辑器中工作
- c# - 异步读取文件的正确方法
- php - Populate dependent select box using Symfony & Ajax
- c - How to resize the height of title bar in Windows API?
- apache - removing trailing slash not working htaccess
- sql - 如何加入 IIF 功能?
- mysql - Design Company -> Location -> Product Database