Oracle数据库常用命令(持续更新)
1. 查询当前用户所有的表
select * from user_tables;
2. 查询当前用户能访问的表
select * from all_tables;
3. 获取表字段
select * from user_tab_columns where table_name='用户表';
select * from all_tab_columns where table_name='用户表';
select * from dba_tab_columns where table_name='用户表';
4. 日期范围查询的两种实现方式
oracle数据库日期范围查询有两种方式:to_char方式和to_date方式,接下来通过一个实例来介绍这一过程。假设要查询2011-05-02到2011-05-30之间的数据。
to_date方式:
select * from tablename where time >= to_date('2011-05-02','yyyy-mm-dd') and
time <= to_date('2011-05-30','yyyy-mm-dd') ;
运行的结果是:可以显示05-02的数据,但是不能显示05-30的数据。
所有可以得出结论:
1)如果想显示05-30的数据可以<to_date('2011-05-31','yyyy-mm-dd'),这样就能显示30号的了。
2)如果想要显示05-30的数据可以<=to_date('2011-05-30 23:59:59 999','yyyy-mm-dd hh24:mi:ss')也是可以查出来的。
to_char方式:
select * from tablename where to_char(time,'yyyy-mm-dd') >= '2011-05-02' and
to_char(time,'yyyy-mm-dd') <= '2011-05-30';
运行的结果是:可以同时显示05-02和05-30的数据。
5. 模糊查询-like后面的通配符
关于like后面的条件,oracle提供了四种匹配模式:
1)%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。
select * from user where name like '%三%';
将会把name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。
如果需要找出name中既有“三”又有“猫”的记录,请使用and条件
select * from user where name like '%三%' and name like '%猫%';
2)_:表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句。
select * from user where name like '_三_';
只找出“唐三藏”这样name为三个字且中间一个字是“三”的记录。
select * from user where name like '三__';
只找出“三脚猫”这样name为三个字且第一个字是“三”的记录。
3)regexp_like:正则表达式函数查询。
select * from user where card_number like '1____60';
select * from user where regexp_like(card_number, '1....60');
可以找出card_number中以1开头60结束并且查询为7位的记录,其中card_number字段属性为字符串。
但如果card_number属性为数字,使用like就不是很好实现了,可以使用如下方式:
select * from user where regexp_like(card_number, '1[0-9]{4}60');
也可以通过使用字符集的方式实现:
select * from user where regexp_like(card_number, '1[[:digit:]]{4}60');
查询card_number中不是纯数字的记录:
select * from user where not regexp_like(card_number, '^[[:digit:]]+$');
查询card_number中不包含任何数字的记录:
select * from user where regexp_like(card_number, '^[^[:digit:]]+$');
查询以12或者1b开头的记录,不区分大小写:
select * from user where regexp_like(card_number, '^1[2b]','i');
查询以12或者1b开头的记录,区分大小写:
select * from user where regexp_like(card_number, '^1[2B]');
查询数据中包含空白的记录:
select * from user where regexp_like(card_number, '[[:space:]]');
查询所有包含小写字母或者数字的记录:
select * from user where regexp_like(card_number, '^([a-z]+|[0-9]+)$');
查询任何包含标点符号的记录:
select * from user where regexp_like(card_number, '[[:punct:]]');
6. 修改字段类型和长度
alter table user modify(name varchar(255));
7. 插入时插入UUID
select sys_guid() from dual;
insert into user(id) values(sys_guid());
Oracle数据库常用命令(持续更新)的更多相关文章
- ORACLE数据库 常用命令和Sql常用语句
ORACLE 账号相关 如何获取表及权限 1.COPY表空间backup scottexp登录管理员账号system2.创建用户 create user han identified(认证) by m ...
- Oracle数据库——常用命令(用户管理、数据库导入导出)
--==cmd控制台==-- --==日常用户管理SQL==-- --连接到SQLPLUS >sqlplus /nolog --以dba身份连接 sql>conn / as sysdba ...
- Oracle数据库常用命令整理
转至:https://blog.csdn.net/creativemobile/article/details/8982164 1监听 (1)启动监听 lsnrctl start (2)停止监听 l ...
- Appium无线连接安卓终端方法 + ADB Shell常用命令(持续更新)
ADB无线连接手机的方法1)手机与PC有线相连 - 检查是否连接正常: adb devices - 执行以下命令:adb tcpip 5555 # 当前9001 - 成功提示:restar ...
- Linux常用命令——持续更新(2018-05-09)
此命令默认是在centos环境下执行,除非特殊标明. 1.查看ip: ifconfig 2.创建指定用户并分配到某个组:创建用户user并分配到root组 useradd -g root user 3 ...
- Linux常用命令(持续更新中)
cd 目录名 :进入某个目录 ls :列出当前目录的内容 locate 文件名/目录名:寻找文件.目录 find 目录名1 -name 文件名/目录名2 :在目录1中寻找目录2 whereis 文件 ...
- Oracle数据库常用命令记录
1.Sql建表 CREATE TABLE AAABBBCCCDDD( ID ) primary key, AAAAAAAA ) not NULL, BBBBBBBB ), CCCCCCCC ), DD ...
- docker-compose常用命令(持续更新...)
build 构建或重建服务 help 命令帮助 kill 杀掉容器 logs 显示容器的输出内容 port 打印绑定的开放端口 ps 显示容器 pull 拉取服务镜像 restart 重启服务 rm ...
- Oracle数据库常用命令
导出表数据 exp user/pwd@dbname file=filename.dmp tables=tbl_name rows=y indexes=n triggers=n grants=n 导入表 ...
随机推荐
- tomcat-虚拟目录的映射
虚拟目录的映射 1.新建 ${tomcat安装目录}\conf\Catalina\localhost\xxx.xml 文件. 文件内容: <Context path="/xxx&qu ...
- 《JavaWeb从入门到改行》很好的复习资料: SQL语句到底怎么写 ?
本文用到的数据库如下: CREATE DATABASE exam; /创建部门表/ CREATE TABLE dept( deptno INT PRIMARY KEY, dname ), loc ) ...
- Lucas定理及扩展
Lucas定理 不会证明... 若\(p\)为质数 则\(C(n, m)\equiv C(n/p, m/p)*C(n\%p, m\%p)(mod\ p)\) 扩展 求 \(C(n,m)\) 模 \(M ...
- 01Jenkins环境准备
01.硬件环境 Linux 64位(windows环境类似) 02.安装JDK a) 标题链接到Oracle官网下载jdk-8u144-linux-x64.rpm b) 将jdk拷贝到Linux的/t ...
- 你真的了解Fragment的生命周期吗?
Android Framwork开发人员中的传奇人物Dianne Hackborn在2010年将Fragment引入了Android,也就是在android3.0之后引入Fragment,他在提交信息 ...
- alembic 数据库管理
alembic简介 Alembic是SQLAlchemy作者编写的Python数据库迁移工具 安装 pip install alembic alembic 操作流程 初始化 alembic init ...
- Azure 虚拟机如何配置 AntiMalware
本文仅演示通过 PowerShell 方式安装并配置 AntiMalware 的过程. 经典虚拟机 立即访问http://market.azure.cn 加载 Antimalware ...
- java笔记--增加虚拟机内存
--如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/3877243.html "谢谢-- 为避免大型应用程序因虚拟机内存不足而无法 ...
- 关于Unity3d的Quaternion.LookRotation的学习
首先,创建两个cube GameObject物件.Origin作为原点参考.Player是我们要实验的物件.如下图所示: 创建一个脚本Quat.cs,赋给Palyer cube.脚本如下: publi ...
- [翻译] GTAppMenuController
GTAppMenuController https://github.com/gianlucatursi/GTAppMenuController This is a simple project in ...