--建表
-- 关键字 : create
-- 用法 :
/*
create table table_name

lie1_name 数据类型 是否为空,
lie2_name 数据类型 是否为空,
lie3_name 数据类型 是否为空,
……………………………………
); */
create table infos
(
stuid varchar2(7) not null , stuname varchar2(10) not null , gender varchar2(2) not null , age number(2) not null , seat number(2) not null , enrolldate date , studress varchar2(50) , classno varchar2(4) not null
) ; -- 添加约束 --添加主键
alter table infos add constraint pk_infos primary key(stuid) ; --check 约束
-- 性别只能是男或女
--作用: 条件限制
alter table infos add constraint ck_infos_gendertest check(gender='男' or gender='女') ; --唯一约束
--作用:使该列内容不重复
alter table infos add constraint un_stuname unique(stuname) ; --日期格式转换
select to_char(sbirthday , 'yyyy-mm-dd hh24:mi:ss') from student ; --查询系统时间
select sysdate from dual ; -- dual 伪列 ,只有一行一列数据 --绝对值函数
--abs() 括号内是数值型或可以隐形转换成数值型
select abs(122),abs(-123),abs(0) from dual ; --数据添加 -- insert into 表名 valus
insert into student(sno,sname,ssex) values ('','小明','男') ; --添加日期
--需要类型转换 to_date
insert into student values(to_date('1990/2/3','yyyy/mm/dd')) ; --提交事务 commit ; --回滚事务 rollback ; --数据的复制 -- insert into 新的表名 select * from 要复制的表名 ; --查询数据去除重复
--distinct
--select distinct 列名 from 表名 ;
-- * 代表所有字段信息
-- != 或 <> 表示不等于
--|| 表示拼接 --修改表
--update 表名 set 条件或添加内容
update student set sclass = '' where sname='小明' ; update student set sclass = '' where sclass is null ; --删除表
--delete
delete student where sname = '小明' ; --快速清空一个表
--truncate
--truncate table 表名 ; --排序 --order by asc/desc 正序/倒序
--放于where条件后 --分组
--group by 列名 --查询位于两个数值之间的记录
--两种方法 select degree from score where degree >70 and degree < 85 ;
--between 后面必须是小的数值
select degree from score where degree between 70 and 85 ; --查询 位于66,77,88 中的成绩 select degree from score where degree=66 or degree=77 or degree=88 ; select degree from score where degree in (66,77,88) ; /*
排序用法 order by asc 正序,默认 ,可不加 desc 降序 ; 语法: order by 字段名1 asc/desc ,字段名2 asc/desc ... 字段在前的优先级高, 先按字段1排序,再按字段2排序 有条件限制语句的话,放在where语句后面 */ -- 去除查询数据中的重复记录
--distinct
--用法
--select distinct lie_name from biao_name ;
--实例
select distinct depart from teacher ; -- 查询两个数据之间 -- 比较运算 例:
select * from score where degree > 60 and degree < 80 ; -- 关键字:between 小值 and 大值 。 例:
select * from score where degree between 60 and 80 ; -- 内置函数 -- 聚合函数 返回单个值
--- 记录条数(列名内容不为空,一般统计主键列) select count(*) from student where sclass = ''; -- 成绩求和 select sum(degree) 总成绩 from score ; -- 平均成绩 select avg(degree) 平均值 from score ; -- 最高分 select max(degree) 最高分 from score ; -- 最低分 select min(degree) 最低分 from score ; -- 伪列
-- rownum 内置列
select * from score where rownum = 1 ; --查询每门课的平均成绩大于80的
-- 先cno 分组,在 内置函数
select cno , avg(degree),count(cno) from score group by cno having avg(degree) > 80 ; select * from (select cno , avg(degree) a,count(cno) from score group by cno ) where a> 80 ; --纵向查询
--两个表之间查询的列数要相同,对应列数的数据类型要相同 select sname,ssex,sbirthday from student
union
select tname,tsex,tbirthday from teacher ; --模糊查询 --查询姓王的学生信息
select * from student where sname like '王%' ;
--% 代表任意个数的字符
-- 一个下划线代表一个字符 _ -- 内置函数 --下限值 select floor(123.12) from dual ; --上限值 select ceil(123.12) from dual ; --四舍五入 select round(123.89) from dual ; --保留位数四舍五入 select round(125.456,2)from dual ; --直接舍掉
--作用: 格式化数据,统一格式 select trunc(123.456) from dual ;
--并不会四舍五入
select trunc(123.456,2) from dual ; --绝对值 select ABS(-23) from dual ; --求余数 ,求模 select mod(78,69) from dual ; --计算字符串长度 select tname,length(tname) from teacher ; --去空格
--去前后空格
select trim(' a b cf ') from dual ;
--去前空格 ltrim
select ltrim(' sdf ') from dual ;
--去后空格 rtrim
select rtrim(' sdf ') from dual ; --查找替换 select replace(' s df g ',' ') from dual ; select sname,replace(sname,'王','李') from student ; --查找字符串(空格也算一个),从1开始,找不到返回0 select instr('sd wef','w') from dual ; --截取字符串
--3 第几位开始截取
--5 截取长度
select substr('sdfga fgh',3,5) from dual ; select sname,substr(sname,1,1) || '同学' from student ; --null值处理 select nvl(degree,0) from score ; select nvl2(degree,55,0) from score ; select t.*,decode(ssex,'男','','女','') from student t ; --返回当前用户登录名 select user from dual ; ---取得序列的当前值
select sq_test.nextval from dual ; select sq_test.currval from dual ; insert into weadafa values(sq_test.nextval,'王五') ;
commit ;
select * from weadafa ; --视图 create or replace view v_score as
select t.*,s.sname,c.cname
from score t,student s,course c where t.sno=s.sno and t.cno=c.cno ;

Oracle ——————建表、select、视图的更多相关文章

  1. 5.oracle建表的时候同时创建主键,外键,注释,约束,索引

    5.oracle建表的时候同时创建主键,外键,注释,约束,索引 1 --主键 )); ) ,constraint aba_pr primary key(id,name1)); --外键 )); --复 ...

  2. oracle 建表 主键自增序列/////

    oracle 建表 主键自增序列 (2011-10-12 11:59:22) 转载▼ 标签: 杂谈 分类: oracle SQL> create table sms_activity(  2   ...

  3. Oracle建表提示SQL 错误: ORA-00904: : 标识符无效

    Oracle建表提示: 错误报告:SQL 错误: ORA-00904: : 标识符无效00904. 00000 -  "%s: invalid identifier"*Cause: ...

  4. PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写

    原文:PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大.小写 若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入T ...

  5. oracle 建表时显示ORA-00984: 列在此处不允许

      oracle 建表时显示ORA-00984: 列在此处不允许 CreationTime--2018年7月19日16点10分 Author:Marydon 1.情景展示 使用plsql建表时,报错 ...

  6. oracle 建表时显示ORA-00904无效的标识符

      oracle 建表时显示ORA-00904无效的标识符 CreationTime--2018年7月19日16点03分 Author:Marydon 1.情景展示 使用plsql建表时,报错 字段展 ...

  7. Oracle建表

    1.oracle数据库中的多种数据结构: 1.表结构            存储数据 2.视图 一张表或多张表中数据的字节 3.sequence 主要用来生成主键值 4.index 提高检索性能 我们 ...

  8. SQL SERVER 生成ORACLE建表脚本

    /****** Object: StoredProcedure [dbo].[GET_TableScript_ORACLE] Script Date: 06/15/2012 13:07:16 **** ...

  9. Oracle建表插数据等等

    Oracle的表的管理: 表名和列的命名规则,详见 数据库命名规范 . 必须以字母开头 . 长度不能超过30个字符 . 不能使用Oracle的保留字 . 只能使用如下字符 column_name-Z, ...

随机推荐

  1. Openstack的ping不通实例的解决办法

    状态:实例在管理平台上正常创建,也能vnc到实例里面使用ifconfig,查看IP得到我们想要的IP,但是在除了计算节点以外的机器ping实例就是不通. 操作:主要为了测试网络51删除,重新创建网络5 ...

  2. viewpager+fragment+HorizontalScrollView

    xml布局 <RelativeLayout        android:id="@+id/rl_column"        android:layout_width=&q ...

  3. 【python cookbook】【字符串与文本】8.编写多行模式的正则表达式

    问题:用正则表达式对一段文本块做匹配,但是希望在进行匹配时能够跨越多行 解决方案: 1.正则表达式添加对换行符的支持: 2.re.compile()函数一个有用的标记-re.DOTALL使得正则表达式 ...

  4. 161012、JAVA读写文件,如何避免中文乱码

    1.JAVA读取文件,避免中文乱码. /** * 读取文件内容 * * @param filePathAndName * String 如 c:\\1.txt 绝对路径 * @return boole ...

  5. dir cmd、the DIR Command、windows

    原因   :如何在windows下的cmd.exe中只列出文件名? solve : dir \a:-d \b Extend Reading : dir [drive:][path][filename] ...

  6. db2常用函数(1)

    VALUE函数 语法:VALUE(EXPRESSION1,EXPRESSION2) VALUE函数是用返回一个非空的值,当其第一个参数非空,直接返回该参数的值,如果第一个参数为空,则返回第一个参数的值 ...

  7. 骑士cms(74cms)个人版 整合UC

    1.安装74cms完成后登录总后台在菜单条工具选项中添加uc整合菜单. 在admin/templates/sys/admin_left_tools.htm这个文件中添加 <li >< ...

  8. cat > 命令也可以创建文档

    今天看<Linux/Unix系统编程手册>,发现用cat > 命令也可以直接创建文本文档: cat > testcatcreate.txttesttest [2]+ Stopp ...

  9. CalParcess.php.

    <?php require_once "OperSerVice.class.php"; //接受三个数 //isset if(!isset($_REQUEST['NUM1'] ...

  10. 【转】如何安装mysql服务

    转载地址:http://www.2cto.com/database/201211/168081.html  我刚开始安装mysql的时候,在windows的服务里面可以看到,但是装了以后有一段时间没有 ...