
SQL
文章平均质量分 73
楓尘林间
计算机爱好者
展开
-
[转]SparkSQL中DataFrame的getAs和getString函数解析
JSON数据{"name":"Michael","age":10, "adress": "beijin"}{"name":"Andy", "age":30, "adress": "beijin"}{"name":"Justin", "age":19, "adress": "beijin"}getAs函数peopleDF.map(x => x.getAs[String]("adress")).show()//运行结果+------+| value|+------+|beijin|转载 2021-04-19 15:59:33 · 1394 阅读 · 0 评论 -
Oracle与Mysql的时间标准化和字符标准化
Oracle1.时间标准化to_date(字符串, “字符串格式”)返回值: 标准化的时间格式 yyyy-mm-dd hh-mi-ss (24小时制)select to_date('2018 10 18 21-01-52','YYYY MM DD HH24-MI-SS') AS Ttime from VAI_PROGRAM;结果:2018-10-18 21:01:522.字符标准化to_char(标准化时间格式, “字符串格式”)返回值 标准化的"字符串格式"select T原创 2020-10-24 12:07:36 · 809 阅读 · 0 评论 -
Spark sql 利用COALESCE()函数full join 两张DataFrame
我们经常使用spark时会对表合并import spark.implicits._import spark.implicits._var data1 = Seq( | ("1", "ming", "hlj"), | ("2", "tian", "jl"), | ("3", "wang", "ln"), | ("4", "qi", "bj"), | ("5", "sun", "tj") | ).toDF("useid", "name", "live") var data原创 2020-08-19 15:27:11 · 2259 阅读 · 0 评论 -
spark通过jdbc方法连接数据库
jdbc()方法Spark SQL支持数据源使用JDBC从其他数据库读取数据。 与使用JdbcRDD相比,应优先使用此功能。 这是因为结果以DataFrame的形式返回,并且可以轻松地在Spark SQL中进行处理或与其他数据源合并。 JDBC数据源也更易于从Java或Python使用,因为它不需要用户提供ClassTag。 (请注意,这与Spark SQL JDBC服务器不同,后者允许其他应用程序使用Spark SQL运行查询)。该方法位于 : org.apache.spark.sql中的 Data原创 2020-08-18 15:03:01 · 4693 阅读 · 1 评论 -
pyspark读取和存入数据的三种方法
pyspark读取数据方法一:从hdfs读取# -*- coding: utf-8 -*from pyspark.sql import SparkSession, HiveContext,DataFrameWriterimport argparseimport timeimport numpy as npimport pandas as pdspark = SparkSession.builder.enableHiveSupport().appName("test").getOrCrea原创 2020-06-18 11:36:30 · 10524 阅读 · 1 评论 -
Spark中读取/写入mysql数据库
mysqlvar row_data = spark.read.jdbc(url, table, predicates, prop)函数:jdbcdef jdbc(url : scala.Predef.String, table : scala.Predef.String, predicates : scala.Arr原创 2020-06-10 11:42:10 · 2142 阅读 · 1 评论 -
Spark sql 单引号'' 使用问题
spark sql中单引号意味着要某个变量所代表的值如var q = 111spark.sql(s"select '$q' as t").show()+---+| t|+---+|111|+---+去掉单引号spark.sql(s"select $q as t").show()+---+| t|+---+|111|+---+两者在该情境下是...原创 2020-03-27 16:37:57 · 3493 阅读 · 0 评论 -
SQL筛选关键字执行顺序
Group By 和 Having, Where ,Order by语句的执行顺序:最后要说明一下的Group By, Having, Where, Order by几个语句的执行顺序。一个SQL语句往往会产生多个临时视图,那么这些关键字的执行顺序就非常重要了,因为你必须了解这个关键字是在对应视图形成前的 字段进行操作还是对形成的临时视图进行操作,这个问题在使用了别名的视图尤其重要。以上列举的...转载 2019-11-22 10:43:12 · 387 阅读 · 0 评论 -
Orcale查询某列包含字符串
查询某列包含字符串方法:instr如字段col中是否好友字符"a" :instr(col,‘a’)>0表示包含 =0表示不包含SELECT student_id,student_nameFROM studentsWHERE instr( address, ‘beijing’ )>0contains网上说用contains,但是实际测试显示无效字符,参考讨论。原...原创 2019-11-19 09:43:53 · 1748 阅读 · 0 评论 -
Spark UDF使用详解及代码示例
Spark UDF使用详解及代码示例以下代码均适用于spark 2.x注册方式1.匿名注册:spark.udf.register(“strLen”, (str: String) => str.length())2.实名注册:def isAdult(age: Int) = { if (age < 18) { false } else { true...转载 2019-09-09 15:42:17 · 453 阅读 · 0 评论 -
spark sql 把字符串类型改为数值类型 并按照此列进行排序
只需要 order by CAST(cc.XX as INT)XX为排序列名val data4 = Seq( ("ming", "20190101004050", "man"), ("min", "20190101004050", "man"), ("mi", "20190101004050", "man"), ("kun", "20190102...原创 2019-08-30 17:31:13 · 6843 阅读 · 0 评论 -
Spark API 全集Spark SQL 函数全集的网址
文章地址:https://liam-blog.ml/2018/03/23/spark-sql-functions-api/https://www.cnblogs.com/feiyumo/p/8760846.htmlhttps://blog.youkuaiyun.com/bingchutongguan/article/details/79348360转载 2019-08-29 17:34:54 · 347 阅读 · 0 评论 -
(转载)Spark DataFrame中的join类型
Spark DataFrame中join与SQL很像,都有inner join, left join, right join, full join; 那么join方法如何实现不同的join类型呢? 看其原型 def join(right : DataFrame, usingColumns : Seq[String], joinType : String) : DataFrame def jo...转载 2019-08-06 15:35:12 · 948 阅读 · 0 评论 -
SQL语句中“<>”含义
在SQL语句中,“<>”代表的是不等于,和 " != "是一个意思!原创 2019-08-13 14:31:49 · 27792 阅读 · 0 评论 -
select * from a,b用法
以前没有注意,总认为select * from a,b 实际上的意思就是查询a表和b表,这样查询和查询两次表a和b是一样的效果。比如例子:select b.DictVal+pa.AttaURL as src from HSProtAttachment pa,BDDict b where pa.ProtAttaID=20 and b.Type='FTPSet' and b.DictNo='...转载 2019-08-13 15:59:24 · 26371 阅读 · 0 评论 -
(转)execute、executeQuery和executeUpdate之间的区别
execute、executeQuery和executeUpdate之间的区别JDBCTM中Statement接口提供的execute、executeQuery和executeUpdate之间的区别Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。使用哪一个方法由 SQL 语句所产生的内容决定。方法execu...转载 2019-08-09 10:57:17 · 478 阅读 · 0 评论 -
spark sql的join方法
join(other, on=None, how=None)[source]Joins with another DataFrame, using the given join expression.Parameters other – Right side of the join on – a string for the join column nam...原创 2019-08-07 13:57:13 · 907 阅读 · 0 评论 -
(转载)Spark sql之DataFrame基本操作
1、创建DataFrame本文所使用的DataFrame是通过读取mysql数据库获得的,代码如下:val spark = SparkSession .builder() .appName("Spark SQL basic example") .enableHiveSupport() //.config("spark.some.config.op...转载 2019-08-07 14:51:33 · 1131 阅读 · 0 评论 -
(转载)Spark sql的改变表中数据类型
两种方法:df.select(col(“xxx”).cast(DateType)) 进行单列转换dateFrame默认所有数据都默认为String其他数据类型包括: 数字类型 ByteType:代表一个字节的整数。范围是-128到127 ShortType:代表两个字节的整数。范围是-32768到32767 IntegerType:...转载 2019-08-07 15:10:47 · 2919 阅读 · 0 评论 -
Spark对Dataframe列名进行操作
获取df所有列的名字df.columns.toListval data1 = Seq( | ("1", "ming", "hlj"), | ("2", "tian", "jl"), | ("3", "wang", "ln"), | ("4", "qi", "bj"), | ("5", "sun", "tj") | ).toDF("useid", "name", "liv...原创 2019-08-28 16:02:29 · 4941 阅读 · 0 评论 -
Scala Map映射的get方法注意
先看一下Map的get方法定义: def get(key: A): Option[B] /** Creates a new iterator over all key/value pairs of this map * * @return the new iterator */返回值是一个Option[B]查阅资料发现:1.映射.get(键)这样的调用返回...原创 2019-08-28 16:59:13 · 3791 阅读 · 0 评论 -
SPARK-SQL内置函数之时间日期类
转自:http://www.cnblogs.com/feiyumo/p/8760846.html一、获取当前时间1.current_date获取当前日期2018-04-092.current_timestamp/now()获取当前时间2018-04-09 15:20:49.247二、从日期时间中提取字段1.year,month,day/dayofmonth,hour,minute,s...转载 2019-08-29 11:29:54 · 642 阅读 · 0 评论 -
解决sparksql两个DataFrame合并后出现两列相同的情况
我们经常使用spark时会对表合并val data1 = Seq( | ("1", "ming", "hlj"), | ("2", "tian", "jl"), | ("3", "wang", "ln"), | ("4", "qi", "bj"), | ("5", "sun", "tj") | ).toDF("useid", "name", "live") val ...原创 2019-08-29 14:47:20 · 6360 阅读 · 0 评论 -
(转载)create table select from 和 insert into table select from的区别
create table select from 和 insert into table select from都是用来复制表,两者的主要区别为:create table select from 要求目标表不存在,因为在插入时会自动创建。insert into table select from 要求目标表存在,相当于复制插入。备份表数据:create table tmp_article_...转载 2019-08-06 14:02:36 · 523 阅读 · 0 评论