首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL如何选择只有3个字符代码的数据(国家)?

SQL如何选择只有3个字符代码的数据(国家)?
EN

Stack Overflow用户
提问于 2022-10-31 10:18:26
回答 3查看 52关注 0票数 0

我必须摘取所有国家的名单。但是,在country列(第2列)下的datatable中,它也包括了非洲大陆,这不是我想要的。

我意识到只有3个字符的第一列(iso_code)是国家的数据,而超过3个字符的是大陆/非国家。我该如何提取这个呢?

这是提取所有内容(包括列下的“大陆”)时的当前代码:

代码语言:javascript
复制
select count(distinct country) as "Number of Countries"
FROM owid_energy_data
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-10-31 10:54:18

如果您希望从一个列中提取所有不同国家的名称,其中的前三个字母总是作为国家名称,那么请使用以下方法:

代码语言:javascript
复制
select distinct left(country,3) as country from owid_energy_data

选择iso_code (第一栏)只有三个字母的国家:

代码语言:javascript
复制
select distinct country as countries from owid_energy_data where length(iso_code) = 3

如果您想要计数,那么只需将计数添加到上面的一个:

代码语言:javascript
复制
select  count(distinct country) as total_countries from owid_energy_data
票数 1
EN

Stack Overflow用户

发布于 2022-10-31 10:24:05

如下所示:

代码语言:javascript
复制
select count(distinct country) as "Number of Countries" 
FROM owid_energy_data    
where len(iso_code) = 3
票数 0
EN

Stack Overflow用户

发布于 2022-10-31 10:55:02

代码语言:javascript
复制
SELECT OED.COUNTRY AS [NUMBER OF COUNTRIES]
FROM OWID_ENERGY_DATA OED
WHERE LEN(OED.COUNTRY) < 3

试试看!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74261797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档