
SQL
SQL
_沧海桑田_
ACL/NAACL/EMNLP/COLING审稿人,
MOD大侠梦/MOD禾下霸业作者。
github.com/guotong1988
展开
-
SQL,union之后可能的坑
【代码】union之后可能的坑。原创 2025-03-04 19:45:31 · 133 阅读 · 0 评论 -
SQL大坑:union会合并后去重,union all不会有distinct的结果
【代码】SQL大坑:union会合并后去重,union all不会有distinct的结果。原创 2025-02-20 15:57:38 · 130 阅读 · 0 评论 -
SQL选出英文或中文的row
【代码】SQL选出包含英文的row。原创 2025-02-14 15:38:10 · 130 阅读 · 0 评论 -
SQL 只保留中文英文数字空格
【代码】hive SQL 只保留中文英文数字空格。原创 2024-12-24 16:35:42 · 162 阅读 · 0 评论 -
SQL之理解:join是把两个table的column合到一个,union是把两个table的row合到一个
【代码】SQL之理解:join是把两个table的column合到一个,union是把两个table的row合到一个。原创 2024-11-22 09:35:40 · 112 阅读 · 0 评论 -
SQL定义一个常量
【代码】SQL定义一个常量。原创 2024-11-21 15:04:59 · 137 阅读 · 0 评论 -
SQL,取某列的50/90/95中位数
【代码】SQL,取某列的50/90/95中位数。原创 2024-11-05 19:14:51 · 142 阅读 · 0 评论 -
hive sql, stringCol1 contains stringCol2
【代码】hive sql, stringColumn1 contains stringColumn2。原创 2024-09-14 19:53:50 · 181 阅读 · 0 评论 -
【SQL】where语句中使用if
【代码】【SQL】where语句中使用if。原创 2024-06-24 19:58:46 · 493 阅读 · 0 评论 -
【Spark】直接从DataFrame的schema创建表
然后insert数据。原创 2024-06-04 16:20:41 · 600 阅读 · 2 评论 -
【SQL】where in 里的多个值的中间少逗号也能执行,是坑!
【代码】【SQL】where in 里的多个值,中间少逗号也能执行,是坑!原创 2024-05-23 10:51:31 · 177 阅读 · 0 评论 -
【hive-SQL】switch case 的实现
【代码】【hive-SQL】switch case 的实现。原创 2024-05-17 17:35:41 · 276 阅读 · 0 评论 -
【hive-SQL】if 的使用,以 有除法,添加分母值异常处理 为例
时,alias_name = column2/column1。时,alias_name = 0.123。原创 2024-05-14 17:40:43 · 168 阅读 · 0 评论 -
【hive-SQL】多个column转成一个array<>类型的column
【代码】【hive-SQL】多个column转成一个array_column。原创 2024-05-09 14:47:23 · 185 阅读 · 0 评论 -
【hive-SQL】string 转成 map<>
【代码】【hive-SQL】string 转成 map<>原创 2024-05-09 14:38:38 · 413 阅读 · 1 评论 -
【hive-SQL】string 转成 array<>
【代码】【hive SQL】string 转成 array<bigint>原创 2024-05-09 14:27:18 · 1069 阅读 · 1 评论 -
SQL column1 contains another column2
【代码】SQL column1 contains another column2。原创 2024-02-28 10:23:00 · 383 阅读 · 0 评论 -
hive sql, array contains
否则报错 WHERE clause must be a condition。注意where那里要加。原创 2023-05-04 15:17:13 · 214 阅读 · 0 评论 -
hive split SQL示例
【代码】hive split SQL示例。原创 2023-03-16 09:33:17 · 128 阅读 · 0 评论 -
hive,SQL解析array<int>
select * from table_name lateral view explode(array_int_column) a as int_column where int_column = 123原创 2022-01-18 14:26:19 · 2693 阅读 · 0 评论 -
SQL,两个字段,对其中一个distinct,另一个随机保留
select distinct columnA,columnBfrom the_tablegroup by columnA改为select distinct columnA,max(columnB)from the_tablegroup by columnA原创 2021-11-15 16:17:53 · 1188 阅读 · 0 评论 -
SQL left join 的复盘
left join 区分于 inner join 的地方只是:left join右边没有 左边也保留,inner join右边没有 左边不保留。而坑在于left join 的右边有重复的key时,最后数据量也可能会比 左边本身多原创 2021-07-02 10:42:38 · 150 阅读 · 0 评论 -
hive SQL between 的坑
between dt1 and dt2必须要求 dt2 > dt1 ,即 有顺序原创 2021-06-25 16:10:45 · 1120 阅读 · 0 评论 -
SQL,insert overwrite table 的各个列顺序 要和 insert的表 里顺序一致
insert overwrite table insert_table PARTITION ( column4 ) select column1, column2, column3 from source_table原创 2021-05-11 09:17:45 · 3413 阅读 · 0 评论 -
SQL 去重
select name, picture_url from table_namewhere name = 'ABC' or name = 'DEF' 想对name去重,而不对picture_url去重,picture_url随便取一个就行如果写成select distinct name, picture_url from table_namewhere name = 'ABC' or name = 'DEF' 就是对name+picture_url去重解决方案:select name,原创 2020-08-10 15:35:18 · 1007 阅读 · 0 评论 -
SQL的join本质是一个两层for循环
伪代码final_table = []for row1 in left_table: for row2 in right_table: if condition(row1["col1"],row2["col2"]) == True: final_row = row1 + row2 final_table.append(fi...原创 2020-01-20 13:15:14 · 644 阅读 · 0 评论 -
SQL嵌套查询
查询选修课程号为''101''并且成绩高于学生号为''9501101''的所有学生的成绩select * from sclass where cno=''101'' and degree>=(select degree from sclass where sno=''9501101''and cno=''101'')给出人口多于俄国的国家名称SE原创 2012-11-12 15:20:10 · 804 阅读 · 0 评论 -
sql优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询,那就需要选择交叉表(intersection table)作为基础表,交叉表是转载 2012-11-26 16:12:14 · 685 阅读 · 0 评论 -
多张表的数据库设计
原创 2013-01-15 18:43:43 · 1035 阅读 · 0 评论 -
sql 别名、 表连
原创 2013-05-06 21:34:35 · 1035 阅读 · 0 评论 -
SQL,名词,缩略词
数据定义语言(DDL),包括CREATE(创建)命令、ALTER(修改)命令、DROP(删除)命令等。 数据操纵语言(DML),包括INSERT(插入)命令、UPDATE(更新)命令、DELETE(删除)命令、SELECT … FOR UPDATE(查询)等。 数据查询语言(DQL),包括基本查询语句、Order By子句、Group By子句等。 事务控制原创 2013-06-24 16:55:05 · 1102 阅读 · 0 评论 -
outer join 实例讲解
原创 2013-07-04 11:20:18 · 912 阅读 · 0 评论 -
sql cross join
下面两个表达式是完全等价的。 SELECT * FROM table1, table2;SELECT * FROM table1 CROSS JOIN table2;单表每一行是一个整体原创 2014-02-21 20:02:23 · 1116 阅读 · 0 评论 -
如何防止sql注入
1.永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和 双"-"进行转换等。 2.永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。 3.永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。 4.不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。转载 2012-11-26 14:28:22 · 874 阅读 · 0 评论