当前位置: 首页 > news >正文

32-Hive SQL DML语法之查询数据

1.Select语法树

从哪里查询取决于FROM关键字后面的table_reference,
这是我们写查询SQL的首先要确定的事即你查询谁?
表名和列名不区分大小写。

在这里插入图片描述
案例:在数据集中有一份数据文件《us-covid19-counties.dat》,里面记录了2021-01-28美国各个县累计新冠确诊病例数和累计死亡病例数。

use liushao;
drop table if exists t_usa_covid19;
CREATE TABLE t_usa_covid19(count_date string,county string,-- 美国的县郡state string, -- 哪个洲fips int, --邮政编码cases int,--累计确诊病例deaths int)--死亡人数
row format delimited fields terminated by ",";-- 加载数据
load data local inpath '/export/data/hivedata/covid19-counties.dat' into table liushao.t_usa_covid19;select * from t_usa_covid19;--  1. 查询 美国鬼子  美国的县郡  哪个洲 死了多少人
select county,state,deaths from t_usa_covid19;select 1 from t_usa_covid19;-- 2.我想看一下你目前正在使用哪个数据库
select  current_database();--  3.匹配所有的行 (看 洲)
select state from t_usa_covid19;
-- 相当于
select all state from t_usa_covid19;-- 4.数据去除重复
select distinct state from t_usa_covid19;-- 5.使用条件
-- 一大于二十不成立的 返回 false ,不能查询到结果
select * from t_usa_covid19 where 1 > 2;-- 六等于六成立 返回 true ,能查询到结果
select * from t_usa_covid19 where 6 =6;-- 6.查找加利福尼亚州的 疫情数据
select * from t_usa_covid19 where state='California';--  7.使用一下函数  长度  length() 查询州字母长度超过10位的
select * from t_usa_covid19 where length(state)>10;--  8. 查询死亡人数超过100  的州  不能执行
--注意:where条件中不能使用聚合函数
-- --报错 SemanticException:Not yet supported place for UDAF ‘sum'
--聚合函数要使用它的前提是结果集已经确定。
--而where子句还处于“确定”结果集的过程中,因而不能使用聚合函数。
-- select state,sum(deaths) from t_usa_covid19 where sum(deaths)>100 group by state;select state,sum(deaths) from t_usa_covid19 group by state having sum(deaths)>100 ;--9 查询 美国共有多少个的县郡   结果是: 3245select  county from t_usa_covid19;select  count(county) as county_nums from t_usa_covid19;-- 去除重复的县郡  1930
select  count(distinct county) as county_nums from t_usa_covid19;-- 10 查询一下美国加州有多少个县
select count(county) from t_usa_covid19 where state='California';-- 11 统计德州总的死亡病例数
select sum(deaths) from  t_usa_covid19 where state='Texas';-- 12 统计美国最高确诊病例是哪个县
select  max(cases) from  t_usa_covid19;-- 回去 看看  group by   limit   order by  等 。。。
http://www.dtcms.com/a/320945.html

相关文章:

  • 系统网络端口安全扫描脚本及详解
  • SpringBoot激活指定profile的方式
  • linux统计文本文件中行数、单词数和字节数的命令行工具wc介绍
  • 深入解析Linux信号处理机制
  • Linux软硬链接与动静态库
  • MQTT与服务器通讯
  • LINUX88 变量:命令定义;普通数组定义(复);declare -i /-x
  • 接口返回504 Gateway Time-out 错误,这意味着请求在网关或代理服务器等待上游服务器响应时超时。以下是可能的原因和排查建议:
  • Day01 项目概述,环境搭建
  • 「iOS」————NSOperation
  • Java对象与JSON互转
  • iOS混淆工具有哪些?跨平台 App 混淆与保护的实用方案
  • Android初学者系统开发学习路线参考
  • 构建高可用架构:ZDNS GSLB 在多数据中心场景下的应用与 F5 替换实践
  • [element-plus] flex布局 el-table表格设置百分比高度失效
  • 项目实战三:DPDK
  • el-image-viewer组件在el-table使用时层级异常问题解决
  • 无人机如何靠陀螺仪保持稳定飞行?
  • 无人机教育热潮下,超优航空如何为青少年插上科技翅膀?
  • 协同进化:AIGC、Agent和MCP如何相互促进共同发展
  • 使用Python提取PDF大纲(书签)完整指南
  • Java基础-模拟多线程安全问题场景
  • Track Any Anomalous Object: A Granular Video Anomaly Detection Pipeline
  • tmi8150b设置电机速度有两个地方,x轴电机,y轴电机,具体如下
  • 13. 搜索引擎-ElasticSearch
  • (已解决)Mac 终端上配置代理
  • 机器学习支持向量机(SVM)
  • C++使用FFmpeg进行视频推流
  • conda或mamba install 相关软件报错
  • GraphRAG 入门教程:从原理到实战