sql Server分页sql:
ID:唯一标示列
number:一次读取的行数
page:第几页
select top(number) ID,字段 from 表 where 条件 and ID not in(select top(number*page) ID from 表 where条件)
select top(20) PERSON_DOCUMENT_ID,name from EHS_PERSON_DOCUMENT where PERSON_DOCUMENT_ID not in (SELECT top(20*1) PERSON_DOCUMENT_ID from EHS_PERSON_DOCUMENT )
常用sql:
1、创建临时表空间
create temporary tablespace user_temp
tempfile 'D:\oracle\oradata\user_temp.dbf'
size 50m
autoextend on
next 50m maxsize 2048m
extent management local;
2、创建表空间
create tablespace user_data
logging
datafile 'D:\oracle\oradata\user_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m
extent management local;
3、创建用户并指定表空间
create user username identified by password
default tablespace user_data
temporary tablespace user_temp;
4、给用户授权
grant connect,resource,DBA to username;
5、导入dmp文件
imp username/password@orcl file=D:/temp.dmp fromuser=sfda touser=sfda fromuser=framework touser=framework
6、删除用户
drop user username cascade
7、创建表
create table Student(
id indentity(1,1) primary key,
name varchar(20) not null,
age int not null
);
8、新增
insert [into] <表名> (列名) values (列值)
例:insert into student(id,name,age) values("01","犯困瞌睡",20);
9、直接拿现有数据创建一个新表并填充
select <新建表列名> into <新建表名> from <源表名>
例:select name,address,email into tongxunlu from strdents
10、使用union关键字合并数据进行插入多行
insert <表名> <列名> select <列值> union select <列值>
例:insert Students (姓名,性别,出生日期)
select '开心朋朋','男','1980/6/15' union(union表示下一行)
select '蓝色小明','男','19**/**/**'
例:insert Students (姓名,性别,出生日期)
select '开心朋朋','男','1980/6/15' union(union表示下一行)
select '蓝色小明','男','19**/**/**'
11、删除
delete from <表名> [where <删除条件>]
例:delete from a where name='开心朋朋'(删除表a中列值为开心朋朋的行)
例:delete from a where name='开心朋朋'(删除表a中列值为开心朋朋的行)
12、删除整个表
truncate table <表名>
truncate table tongxunlu
注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能用语有外建约束引用的表
truncate table tongxunlu
注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能用语有外建约束引用的表
13、修改
update <表名> set <列名=更新值> [where <更新条件>]
例:update tongxunlu set 年龄=18 where 姓名='蓝色小名'
例:update tongxunlu set 年龄=18 where 姓名='蓝色小名'
14、查询
select<列名>from<表名> [where <查询条件表达式>] [order by <排序的列名>[asc或desc]]
15、查询空行
select name from a where email is null
16、在查询中使用常量
select name,'唐山’ as 地址 from Student
查询学生表,显示name列,并添加地址列,其列值都为唐山
17、查询前几行数据,并且显示那些列名
select top 10 name from student
18、多表连接查询内连接
select a.name,b.chengji from a,b where a.name = b.name
select a.name,b.chengji from a inner join b on(a.name=b.name);
19、左外连接
select s.name,c.courseID,c.score from student as s left outer join score as c on s.scode = c.studentID
20、右外连接
select s.name,c.courseID,c.score from strdents as s right outer join score as c on s.scode=c.strdentID