SQL
花生福
做一名优秀的程序员。。
展开
-
mysql、oracle、sqlserver常见方法区分
仅列出了一些常用的函数,也有其他函数可以实现同样功能,不一一列举了,有机会再补充。原创 2023-08-21 16:39:39 · 490 阅读 · 0 评论 -
oracle分别取两表相同和不同的数据
取的是左边表比右边多的,或者左边表与右边表,相同字段,不同的数据。Minus:返回的总是左边表中的数据,它返回的是差集。intersect:返回查询结果中相同的部分(交集)原创 2023-05-04 08:50:21 · 1205 阅读 · 1 评论 -
Oracle创建用户,并限制只能查询某一张表
【代码】Oracle创建用户,并限制只能查询某一张表。原创 2023-02-09 14:10:03 · 2552 阅读 · 0 评论 -
MySql查询树形结构数据
只需创建一个查询函数,传入父节点ID,将所有子节点记录的ID拼成字符串返回。CREATE FUNCTION getChild(parentId VARCHAR(1000))RETURNS VARCHAR(5000)BEGIN DECLARE oTemp VARCHAR(5000); DECLARE oTempChild VARCHAR(5000); SET oTemp = ''; SET oTempChild = parentId; WHILE oTempC原创 2022-04-20 17:10:31 · 6847 阅读 · 0 评论 -
oracle 修改表字段顺序
第一步 查询表IDselect object_idfrom all_objectswhere owner = '当前用户名'and object_name = '表名';第二步 查询表字段序号select obj#, col#, namefrom sys.col$where obj# = '第一步的object_id' order by col#;第三步 修改字段顺序update sys.col$ set col#=3 where obj#='第一步的object_id'原创 2022-02-16 10:39:42 · 3902 阅读 · 1 评论 -
创建、修改、删除、查询序列
创建序列CREATE SEQUENCE seq_name --序列名字 INCREMENT BY 1 --每次自增1, 也可写非0的任何整数,表示自增,或自减 START WITH 1 --以该值开始自增或自减 MAXVALUE 1.0E20 --最大值;设置NOMAXVALUE表示无最大值 MINVALUE 1 --最小值;设置NOMINVALUE表示无最大值原创 2022-02-08 09:59:16 · 355 阅读 · 0 评论 -
修改数据库字符集
生成所有字段修改字符集语句SELECT b.table_name, b.column_name, b.character_set_name, b.collation_name, CONCAT( 'ALTER TABLE ', b.table_name, ' MODIFY ', b.column_name, ' ', b.DATA_TYPE, '(', b.CHARACTER_MAXIMUM_LENGTH, ') ', CASE原创 2020-12-24 15:21:33 · 11222 阅读 · 0 评论 -
Oracle快速复制一张表
快速复制表,仅包含结构:create table newtable as select * from oldtable where 1=2快速复制表,含结构和数据:create table newtable as select * from oldtable原创 2020-03-02 15:30:10 · 5376 阅读 · 0 评论 -
UPDATE语句关联时需注意的事
oracle库中,关联其他表进行更新时,使用如下语句会出现一个问题。UPDATE student a SET a.name = ( SELECT b.name FROM student_copy b WHERE b.id = a.id)执行完会发现,a表中未与b表对应上的记录,name字段值均变为null了。我们想要达到的效果是只有a表的id与b表的id能关联时,才执行更新操作,解...原创 2020-01-21 10:16:14 · 597 阅读 · 0 评论 -
oracle获取中文字段长度
length求得是字符长度, lengthb求得是字节长度,例子如下:SQL> select length('新春快乐') from dual; LENGTH('新春快乐') ------------------ 4 SQL> select lengthb('新春快乐') from dual; LENGTHB('新春快乐') --------------...原创 2020-01-14 11:31:39 · 2007 阅读 · 0 评论 -
oracle获取UUID 乱码
SELECT sys_guid(),rawtohex(sys_guid()) from dual;使用sys_guid()获取oracleUUID,会出现乱码问题,使用库函数对sys_guid()进行处理,则是标准UUID转载 2020-01-03 16:32:06 · 1328 阅读 · 0 评论 -
Oracle中nlssort()函数排序功能
Oracle9i之前,中文是按照二进制编码进行排序的。在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值即可。nlssort可以用来进行语言排序,且不影响当前会话。Java代码SCHINESE_RADICAL_M按照部首(第一顺序)、笔划(第二顺序)排序SCHINESE_STROKE_M按照笔划(第一顺序)、部首(第二顺序)排序SCHIN...原创 2019-11-13 09:30:45 · 291 阅读 · 0 评论