随笔分类 -  DB

数据库:MSSql & MYSql & Oracle
摘要:查询用户数量 -- 查询用户数量 SELECT COUNT(*) AS user_count FROM DBA_USERS; SELECT COUNT(*) AS user_count FROM USER_TABLES; 查询表数量 -- 查询表数量 SELECT OWNER, COUNT(*) A 阅读全文
posted @ 2024-12-23 21:17 Robot-Blog 阅读(45) 评论(0) 推荐(0) 编辑
摘要:返回一个值 create or replace FUNCTION GET_KEY_BY_QUERY ( AAA IN VARCHAR2 ) RETURN NUMBER IS ITEM_VALUE NUMBER; BEGIN SELECT 'TEST' INTO ITEM_VALUE FROM DUA 阅读全文
posted @ 2024-10-21 16:56 Robot-Blog 阅读(47) 评论(0) 推荐(0) 编辑
摘要:使用REGEXP_SUBSTR SELECT REGEXP_SUBSTR(key, '[^,]+', 1, ROWNUM) AS VALUE FROM ( select '1,3,4,4' as key from dual ) CONNECT BY ROWNUM <= LENGTH(key) - L 阅读全文
posted @ 2024-10-21 16:48 Robot-Blog 阅读(190) 评论(0) 推荐(0) 编辑
摘要:SQL select 1 from dual WHERE xxx IN ('AAA&SSS') 编译器提示 原因和解决方法 在Oracle SQL查询中,‌如果查询条件包含特殊字符如&,‌通常需要进行转义处理,‌以确保查询语句能被正确解析 &在Oracle中可能被视作替换变量的一部分,‌因此直接使用 阅读全文
posted @ 2024-08-07 11:52 Robot-Blog 阅读(240) 评论(0) 推荐(0) 编辑
摘要:优化方向 1.使用合适的索引:确保查询中涉及的字段有适当的索引。索引可以帮助数据库引擎快速定位和检索数据,提高查询效率。 2.避免使用通配符查询:尽量避免在查询条件中使用通配符 '%',因为这样的查询会导致全表扫描,影响性能。 3.避免使用函数:在查询条件中避免使用函数,尽量在字段上使用函数,因为函 阅读全文
posted @ 2024-06-05 11:58 Robot-Blog 阅读(807) 评论(0) 推荐(0) 编辑
摘要:背景:直接like查询匹配不到数据 SELECT 1WHERE '["List":[]}]' LIKE '%[]%' 解决方案: 1.用方括号([])处理特殊字符 SELECT 1WHERE '["List":[]}]' LIKE '%[[]]%' 2.用转义符:escape SELECT 1 WH 阅读全文
posted @ 2023-11-01 14:56 Robot-Blog 阅读(189) 评论(0) 推荐(0) 编辑
摘要:语法: STRING_SPLIT(string , separator) 参数说明: string: 任何字符类型(例如 nvarchar、varchar、nchar 或 char)的表达式 separator: 任何字符类型(例如 nvarchar(1)、varchar(1)、nchar(1) 或 阅读全文
posted @ 2023-07-19 17:36 Robot-Blog 阅读(721) 评论(0) 推荐(0) 编辑
摘要:1.初始数据 2.合并数据 3.完整SQL WITH V AS ( SELECT 'No-1' AS No, 'Name-1' AS Name, 'Remark-1' AS Remark UNION ALL SELECT 'No-1' AS No, 'Name-1' AS Name, 'Remark 阅读全文
posted @ 2023-04-13 16:24 Robot-Blog 阅读(306) 评论(0) 推荐(0) 编辑
摘要:Sql SELECT ITEM_DATE, TO_CHAR(ITEM_DATE, 'YYYY-MM-DD') CURRENT_DATE_STR, CURRENT_YEAR, CASE TO_CHAR(ITEM_DATE, 'MM') WHEN '01' THEN 'JAN' WHEN '02' TH 阅读全文
posted @ 2022-12-06 16:12 Robot-Blog 阅读(89) 评论(0) 推荐(0) 编辑
摘要:简单删除 DELETE TABLE_NAME WHERE KEY = 1; DELETE TABLE_NAME WHERE KEY IN (1, 2, 3); DELETE TABLE_NAME WHERE KEY IN (SELECT 1 FROM DUAL); 多条件删除 1.EXISTS DE 阅读全文
posted @ 2022-11-23 16:36 Robot-Blog 阅读(4164) 评论(0) 推荐(0) 编辑
摘要:查询所有表对应的数据量 1.GROUP SELECT A.NAME AS 表名, MAX(B.ROWS) AS 记录条数 FROM SYS.SYSOBJECTS AS A INNER JOIN SYS.SYSINDEXES AS B ON A.ID = B.ID AND (A.XTYPE = 'U' 阅读全文
posted @ 2022-11-22 11:51 Robot-Blog 阅读(233) 评论(0) 推荐(0) 编辑
摘要:定义 /** * 参数1:文本 * 参数2:需要替换文本 * 参数3:替换后的文本 */ TRANSLATE(参数1,参数2,参数3) demo:替换对应字符 -- ab4567 SELECT TRANSLATE('1234567','123' ,'ab') FROM DUAL; -- AA-BB, 阅读全文
posted @ 2022-08-15 16:49 Robot-Blog 阅读(90) 评论(0) 推荐(0) 编辑
摘要:定义 制表符 chr(9) 换行符 chr(10) 回车符 chr(13) 查询 SELECT 'AA' || chr(9) || 'BB' || chr(10) || 'CC' || chr(13) || 'DD' as A FROM DUAL; 替换 SELECT 'AA BB CC DD', 阅读全文
posted @ 2022-08-15 16:36 Robot-Blog 阅读(721) 评论(0) 推荐(0) 编辑
摘要:核心代码 SET SERVEROUTPUT ON BEGIN -- 逻辑代码 ... EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('SQLCODE:' || SQLCODE || ' SQLERRM:' || SQLERRM); END; 单个异常 阅读全文
posted @ 2022-08-14 17:17 Robot-Blog 阅读(117) 评论(0) 推荐(0) 编辑
摘要:交集 WITH V_List1 AS ( SELECT 1 AS NUM FROM DUAL UNION ALL SELECT 3 AS NUM FROM DUAL UNION ALL SELECT 5 AS NUM FROM DUAL UNION ALL SELECT 7 AS NUM FROM 阅读全文
posted @ 2022-07-29 13:59 Robot-Blog 阅读(484) 评论(0) 推荐(0) 编辑
摘要:定义: DBMS_OUTPUT.PUT_LINE (item IN VARCHAR2); 使用: -- 必须有,不然无法显示会报错 SET SERVEROUTPUT ON DECLARE NUM INT := 0; num_max INT := 3; BEGIN dbms_output.put_li 阅读全文
posted @ 2022-07-08 13:27 Robot-Blog 阅读(816) 评论(0) 推荐(0) 编辑
摘要:脚本 SELECT TRUNC(SYSDATE, 'mm') 月初, LAST_DAY(TRUNC(SYSDATE)) 月底, TRUNC(ADD_MONTHS(TRUNC(SYSDATE), -1), 'mm') 上月初, LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE), - 阅读全文
posted @ 2022-06-28 17:39 Robot-Blog 阅读(365) 评论(0) 推荐(0) 编辑
摘要:背景 数据库迁移时,新数据库的 Collocation 和 就数据库 Collocation 不相同,直接修改 Collocation 失败且出现异常:5030 SQL --1.修改为单用户模式 ALTER DATABASE CustDbName SET SINGLE_USER WITH ROLLB 阅读全文
posted @ 2022-05-11 13:58 Robot-Blog 阅读(302) 评论(0) 推荐(0) 编辑
摘要:背景: 根据 特定字段 分组,获取第一次和最后一次的时间,同时要求获得最后一次的其他信息 数据 结果 脚本 语法 LAST_VALUE (expression) OVER ( [partition_clause] [order_clause] [frame_clause] ) PARTITION B 阅读全文
posted @ 2022-05-10 19:35 Robot-Blog 阅读(533) 评论(0) 推荐(0) 编辑
摘要:假定已经成功安装Oracle,此时只需要下载一个第三方驱动就可以连接访问MySql 1.下载驱动:Link 8.0版本的jar包下载地址,点击直接下载。 https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0. 阅读全文
posted @ 2022-04-24 15:21 Robot-Blog 阅读(1216) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示