spark sql 常用语句
在spark dataFrame数据结构里面使用sql语句查询数据
(因为是RDD和dataFrame数据是只读的,所以不能做修改,删除操作。)
首先将文本数据转换为DataFrame数据格式
有两种将RDD转换为Dataframe的形式
- 利用反射机制推断RDD模式
- 使用编程方式定义RDD模式
这里直接读取json文件并转换为dataFrame结构
from pyspark.sql import SparkSession
spark=SparkSession.builder.getOrCreate()
df = spark.read.json("/user/hadoop/data.json")
df.createOrReplaceTempView("data")
dataDF = spark.sql("select title from data where title like '%中国%'").show()
- 查看data表中的所有title
select * from data
- 查看data表中,title包含字符串‘中国’
select title from data where title like '%中国%'
- 查看data表中,country 的值(去重)
SELECT DISTINCT country FROM data
- 查看平均值
spark.sql("select AVG(id) from data").show()
- 累加
spark.sql("select COUNT(id) from data").show()
- 统计有多少行数据
spark.sql("select COUNT(*) AS nums from data").show()
- 查看id=1的第一条数据的name值
spark.sql("select FIRST(name) AS name from data where id=1").show()
类似使用的函数:LAST MAX MIN SUM
spark sql 常用语句的更多相关文章
- 【数据库】 SQL 常用语句
[数据库] SQL 常用语句 1.批量导入 INSERT INTO Table2(field1,field2,...) SELECT value1,value2,... FROMTable1 要求目标 ...
- 【数据库】 SQL 常用语句之系统语法
[数据库] SQL 常用语句之系统语法 1. 获取取数据库服务器上所有数据库的名字 SELECT name FROM master.dbo.sysdatabases 2. 获取取数据库服务器上所有非系 ...
- SQL常用语句之数据库的创建、删除以及属性的修改-篇幅1
本篇文章主要总结了SQL Server 语句的使用和一些基础知识,因为目前我也正在学习,所以总结一下. 要使用数据库语句,首先就要知道数据库对象的结构: 通常情况下,如果不会引起混淆,可以直接使用对象 ...
- SQL常用语句,随时用随时更新
更多详细说明文档查询 http://www.postgres.cn/docs/9.5/infoschema-columns.html 1.1通过表名查询表的属性 SELECT * FROM sys.s ...
- SQL常用语句(二)
--语 句 功 能--数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据 --数 ...
- ORACLE数据库 常用命令和Sql常用语句
ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...
- SQL常用语句整理
有次笔试最后一页的三个数据库连接查询,没有写出来,被考官暗讽了下.现在想来,实习初,确实很LOW.现公司刚入职的时候,负责过ETL方面,所以和数据库打了不少交道,五十行的联合查询.上百行的存储过程很常 ...
- mysql sql常用语句大全
SQL执行一次INSERT INTO查询,插入多行记录 insert into test.person(number,name,birthday) values(5,'cxx5',now()),(6, ...
- sql常用语句--转载
一.基础 .说明:创建数据库 CREATE DATABASE database-name .说明:删除数据库 drop database dbname .说明:备份sql server --- 创建 ...
随机推荐
- 自定义 Generate POJOs.groovy
一.Generate文件 import com.intellij.database.model.DasTable import com.intellij.database.model.ObjectKi ...
- [jsp学习笔记]jstl标签的使用
jstl常用在html嵌套 <body> <% session.setAttribute("q", "yushi"); request.set ...
- oracle 查询 10题
说明:表数据来自oracle 初始用户之一scott里面的三个初始表:emp,dept,salgrade --1.查询员工表中工资最高的雇员的员工号.员工姓名.工资和部门号. select empno ...
- Steam之两个list间交集、并集、差集
public static void main(String[] args) { List<String> list1 = new ArrayList(); list1.add(" ...
- react之高阶组件(二)
高阶组件的使用 接上文———— 一.像函数一样直接调用 import React, { Component } from 'react' import A from './A' class C ext ...
- Android著名开源库
UI方面 1.绘制图表MPAndroidChart.hellocharts: https://github.com/PhilJay/MPAndroidChart https://github.com/ ...
- orangepi获取cpu温度
cat /sys/devices/virtual/hwmon/hwmon1/temp1_input
- Keil、uVision、RealView、MDK、Keil C51之间的区别比较
我们要区别的概念:KEIL UVision,KEIL MDK,KEIL For ARM,RealView MDK,KEIL C51,KEIL C166,KEIL C251 从接触MCS-51单片机开始 ...
- WEB安全工程师整理资料
安全产品 NESS Nmap AWVS Burp APPScan chopper sqlmap kali linux 具体的教程可以在SEcWiki 上搜索 使用公开的漏洞 ...
- 桂电深信服CTF之MSC真假压缩包
真假压缩包-复现(吐槽一句,脑洞真特么大) 先从虚假的入手,一开始猜测虚假的是伪加密,后面也确实是 后面打开压缩包,是一个txt文件 一眼可以看出来是RSA,算出来明文是5(于是就在这里卡了两天,一直 ...