Oracel 数据库表操作
Oracle
表结构操作
创建表
create table tableName
    (id varchar2(36) primary key,
    name varchar2(36),
    age number(12,2),
    createDate date,
    modifyDate date);
--    创建一张表,表名:tableName,
--    字段 id 字符串类型 主键,name 字符串类型普通字段,age 数字类型,createDate 创建日期,modifyDate 修改日期
添加表字段
alter table tableName add (address varchar2(32) default '无',country varchar2(32) default '');
--给表添加 address 和 country字段 都是32位长度的字符串类型
添加字段描述
COMMENT ON COLUMN tableName.address IS '地址';
删除表字段
alter table tableName drop column country;    --删除表的country字段
表数据操作
sql表的设计是很重要的,涉及业务与拓展及后期维护,但是核心应该是:简单
查询表内容
select * from tableName;    --查询表所有内容
select name,age from tableName;    --查询表name字段和age字段
子查询
select
    a.name, a.age ,
    (select b.hobby from kid b where b.name = a.name and rownum = 1) hobby
from  student a  where  a.id = 'id'
查询总数
select count(1) from tableName;    -- 不统计 null
select count(*) from tableName;    -- 统计 null
按条件查询 where
select * from tableName where age >= 18;    --查询表中age大于18的所有数据
插入数据
insert into tableName(field1,field2) values('value1','value2');
提交
commit
撤回
rollback
综合查询
并行查询
多表查询并集
select T1.id,T1.name,T1.age from table1 T1 where T2.age < 16
union
select T2.id,T2.name,T2.age from table2 T2 where T2.age <16
union
select T3.id,T3.name,T3.age from table3 T3 where T3.age < 16
-- 这里 三张不同的表,只需要三张表都有 id,name,age 字段(字符集也要相同,查询结果需要统一类型),就可以查三张表的并集
union all 与 union 区别
两个都是查询多表的并集 ,但是 union 可以重复数据, union 不会重复
to_char to_nchar
字符集不匹配时可用解决方案
使用trim函数去除字符串的空格' '
select trim(' ss') from dual;
查询结果为'ss' 而不是' ss'
表连接查询
inner join 与 left join 的区别
inner join 没有主表与副表之分,left join 有主表副表之分
假如,A表有三条数据,B表有2条数据 他们是关联对应的,那么 inner join 能查出两条,left join 能查出三条
select * from A inner join B on (查询条件)  => 得到两条数据
select * from A left join B on (查询条件) => 得到三条数据(主表A有三条)
case 用法
有两种用法
比较值
select
	T.name,
	T.area,
	case T.age
		when '18' then '刚成年'
		when '20' then '刚20'
		else T.age
	end
	as age,
	from student T
作为搜索条件
select
	T.name,
	T.area,
	case
		when T.age ='18' then '刚成年'
		else T.age
	end
	as age,
	from student T
Oracel 数据库表操作的更多相关文章
- Database学习 - mysql 数据库 表操作
		mysql 数据库 表操作 创建数据表 基本语法格式: 创建数据表: create table 表名( 字段名 datatype 约束, 字段名 datatype 约束, ...... ) 修改表名 ... 
- 传智播客JavaWeb day09-mysql入门、数据库操作、数据库表操作、数据行操作
		不知不觉已到了第九天了,今天主要讲了关系数据库的基本概述.安装.数据库.表和数据行的操作 1. 基本概述 1.1 数据库就是用来存储数据的.早期是存在文件里面的操作起来效率低而且不是很安全. 1.2 ... 
- MySQL数据库(2)_MySQL数据库和数据库表操作语句
		一.关于数据库操作的sql语句 -- .创建数据库(在磁盘上创建一个对应的文件夹) create database [if not exists] db_name [character set xxx ... 
- MySQL数据库-表操作-SQL语句(一)
		1. 数据库操作与存储引擎 1.1 数据库和数据库对象 数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件等. 数据库:存储数据库对象的容器. 数据库分两种 ... 
- Mysql 数据库表操作
		☞ 创建表CREATE TABLE `数据库`.`表` ( `id` INT( 11 ) NOT NULL AUTO_INCREMENT COMMENT '注释',`type_name` VARCHA ... 
- MySQL数据库——表操作
		I.表操作 一.创建表 基本语法如下: create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGINE=InnoDB DEFAULT CHARSET=utf8: ... 
- 数据库-->表操作
		一.MySQL存储引擎 # InnoDB MySql 5.6 版本默认的存储引擎.InnoDB 是一个事务安全的存储引擎,它具备提交.回滚以及崩溃恢复的功能以保护用户数据.InnoDB 的行级别锁定以 ... 
- MySQL数据库-表操作-SQL语句(二)
		1. MySQL多表查询 1.1 外键约束 为了消除多张表查询出现的笛卡尔积的现象,MySQL在建表并进行多表之间的关键查询可以使用外键关联查询. 外键:从表1(sub)的某列引用(ref)另外一个表 ... 
- mysql数据库表操作-表的主键索引和普通索引
		数据库索引就象书的目录一样,如果在字段上建立了索引,那么以索引列为查询条件时可以加快查询数据的速度.查询数据库,按主键查询是最快的,每个表只能有一个主键列,但是可以有多个普通索引列,主键列要求列的所有 ... 
随机推荐
- ajax+vue简单使用
			<script type="text/javascript" src="http://cdn.bootcss.com/vue/2.2.2/vue.min.js&qu ... 
- 【GPU加速系列】PyCUDA(一):上手简单操作
			PyCUDA 可以通过 Python 访问 NVIDIA 的 CUDA 并行计算 API. 具体介绍和安装可以参考 PyCUDA 官网文档和 pycuda PyPI. 本文涵盖的内容有: 通过 PyC ... 
- appache开启自定义404错误并编写404.html
			1,让apache支持.htaccess 我们要找到apache安装目录下的httpd.conf文件,在里面找到 <Directory /> Options FollowSymLinks ... 
- Mongo 服务器的安装
			MongoDB的安装 CentOS 中使用yum安装: touch /etc/yum.repos.d/mongodb-org-4.2.repo vim /etc/yum.repos.d/mongodb ... 
- 使用uwsgi+nginx部署项目
			Uwsgi:部署web应用程序 Nginx:反向代理,静态服务器 1.修改uwsgi配置文件>nginx反向代理[nginx接收请求->传递->[uwsgi] http=.. --& ... 
- three.js 测试1
			关键看一下里面的注释 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ... 
- ESA2GJK1DH1K基础篇: 移植官方MQTT包,让TCP实现MQTT功能(以GPRS模块为例)
			前言 这节代码将在这一节的基础上实现 拷贝第一节测试里面的MQTT文件夹到当前工程 当前工程建个MQTT的文件夹,用于存放那个MQTT文件夹里面的内容 添加文件到里面 注意:::: 实际源码拷贝位置 ... 
- ZROI 暑期高端峰会 A班 Day5 杂题选讲
			CF469E \(n\) 个需要表示的数,请使用最少的 \(2^k\) 或 \(-2^k\) 表示出所有需要表示的数.输出方案. \(n\le 10^5,|a_i|\le 10^5\). 首先每个数肯 ... 
- linux .pid文件简述
			PID全称是Process Identification. PID是进程的代号,每个进程有唯一的PID编号.它是进程运行时系统随机分配的,并不代表专门的进程.在运行时PID是不会改变标识符的,但是你终 ... 
- Spring Boot 知识笔记(配置文件)
			Spring boot 提供了两种常用的配置文件,properties和yml文件. 1.yml yml是YAML(YAML Ain't Markup Language)语言的文件,以数据为中心,比j ... 
