第一篇:SQL語(yǔ)句
create database xuan /*創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)*/
on(name=xuan,filename='d:bbsxuan.mdf',size=10)
log on(name =fei,filename='d:bbsfei.ldf',size=1mb)
drop database xuan /*刪除數(shù)據(jù)庫(kù)*/
use xuan /*轉(zhuǎn)到xuan數(shù)據(jù)庫(kù)*/
create table stu/*創(chuàng)建一個(gè)表*/
(/*表中的列*/
sid int,sname varchar(3)not null,)
select sid/*列*/ from stu/*表名*/ //查看表 或表的某一列
//向已有表中單行添加信息
insert into stu /*表名*/values(1,'wo')/*括號(hào)里是內(nèi)容,用逗號(hào)分隔。(全部添加)
insert into stu(/*括號(hào)中是要添加信息的列名*/)
values(/*括號(hào)中是要添加的內(nèi)容*/)
/*要保證 添加內(nèi)容 和 列的位置、類型一致*/
//從已有表中提取信息向已有表中添加多行信息
insert into stu1 /*表名*/(sid,sname)/*括號(hào)中是列名*/
select sid,sname /*列名*/
from stu2//是已有表?。◤哪膶?dǎo)入的)
//從已有表中提取信息向新表中添加信息
select sid,sname /*列名*/
into stu2/*新表名*/
from stu1/*已有表名*/
//從已有表中提取信息向新表中添加信息并添加標(biāo)識(shí)列
select identity(int,1,1)as sno,sid,sname /*列名*/
into stu2/*新表名*/
from stu1/*已有表名*/
//向已有表中添加多行信息
insert stu/*表名*/(sid,sname)/*括號(hào)里是列名*/
select 1,'wo' /*添加的信息*/ union /*要加第二行必須加union*/
select 2,'ni' union
select 3,'ta'
//刪除數(shù)據(jù)
delete from stu /*表名*/
where sid=1 /*where后是條件*/
truncate table stu /*表名*/
drop table stu /*刪除表*/
/*delete 可以刪除 表中的某行或按照 條件來(lái)刪除 還可以刪除整個(gè)表
而 truncate 只能刪除整個(gè)表
*********************************
***********xuanxuan**************
*********************************
//數(shù)據(jù)查詢
/*查詢格式*/
select x /*列名*/
from y /*表名*/
where x=1 /*條件*/
/*排序語(yǔ)句*/
order by x/*列名*/(asc/desc)升序/降序
/*為列起別名*/
select列名 as 別名,列名(空格)別名,別名=列名 from 表名
/*合并列并在指定列中顯示*/
select x+y(表中的列)as z from 表名(用來(lái)合并的列是這個(gè)表中的)
/*查詢有空值的列*/
select * from 表名 where 列名 is null
/*增加一個(gè)常量列*/
select 學(xué)校=‘北大青鳥(niǎo)’
from 表名
/*顯示前幾行*/
top 5
select top 5 列名,列名
from 表名
/*合并兩個(gè)表的列*/
select 列名,列名 from 表名
union(all)加all不會(huì)合并相同值
select 列名,列名 from 表名
/**/兩個(gè)表的列名 類型 數(shù)量要相同
*********************************
***********xuanxuan**************
*********************************
數(shù)據(jù)查詢
(二)/*模糊查詢*/
select * from x where列名 like A
/*之間查詢*/
select *from x where 列名 between A
/*舉值查詢*/
select *from x where 列名 in('a','b','c')
/*分組查詢*/
select 列名 from 表名 group by 列名(要排序的列)
//多次分組
select 列名 from 表名 group by列名(1),列名(2)
/*分組后再加條件*/
select 列名 from 表名 group by列名 having 條件
/*多表聯(lián)接查詢*/
//內(nèi)聯(lián)接
1.select 表名.列名, ……
from 表1 as 表別名
inner join 表2 as 別名 on 聯(lián)接條件
2.select 表名.列名, ……
from 表1,表2
where 聯(lián)接條件
//外聯(lián)接
1.左聯(lián)接
select 別名.列名,……
from 表1 as 別名
left join 表2 as 別名 on 聯(lián)接條件
2.右聯(lián)接
select 別名.列名,……
from 表1 as 別名
right join 表2 as 別名 on 聯(lián)接條件
3.完整外聯(lián)
select 別名.列名
from 表1 as 別名
full join 表2 as 別名 on 聯(lián)接條件
//交叉聯(lián)接 1.select 別名.列名 from表1 as 別名
cross join 表2 as 別名
2.select 別名.列名 from表1,表2
** 注意:交叉聯(lián)接不需要聯(lián)接條件 **
select 列名 from表名 where條件 group by 列名 order by 列名 having 條件
*********************************
***********xuanxuan**************
*********************************
***********函數(shù)**************
******字符串函數(shù)******
charInder: 是起始位置 charinder(查找的字符,原串,起始位置)
len:字符串長(zhǎng)度 len(字符串)
upper :轉(zhuǎn)換大寫 upper(字符串)
lower : 轉(zhuǎn)換小寫~~~
ltrim:清除左邊的空格 ltrim
rtrim: 清除右邊的空格
right :從右邊開(kāi)始取指定數(shù)目的字符串 right(原串,數(shù)目)
left : 從左邊開(kāi)始取指定數(shù)目的字符串
replace:替換一個(gè)字符串中的字符replace(原串,舊串(改),新串(改))
stuff:在一個(gè)字符串中,刪除指定長(zhǎng)度的字符,并在該位置插入一個(gè)新的字符串 stuff(原串,開(kāi)始位置下標(biāo)(刪),數(shù)量(刪),插入的新串)
******日期函數(shù)******
getdate()
dateadd(類型,數(shù)目,日期):把某個(gè)日期加到一個(gè)日期中
datediff(類型,日期,日期):兩個(gè)日期之間的差距
datename(類型,日期):返回一個(gè)日期的類型
datepart(類型,日期):返回一個(gè)日期中指定部分的數(shù)字
******數(shù)學(xué)函數(shù)******
abs()取絕對(duì)值
ceiling()進(jìn)一制
floor()舍一制
power(底,冪)N次方
round(數(shù),保留小數(shù)點(diǎn)后幾位)表達(dá)式四舍五入到指定的位數(shù)
sign()判斷正負(fù)
sqrt()平方根
******數(shù)學(xué)函數(shù)******
convert(轉(zhuǎn)換類型,要轉(zhuǎn)換的參數(shù))轉(zhuǎn)變數(shù)據(jù)類型
datalength()返回指定表達(dá)式的大?。ㄗ止?jié))
第二篇:sql常用語(yǔ)句
//創(chuàng)建臨時(shí)表空間
create temporary tablespace test_temp
tempfile 'E:oracleproduct10.2.0oradatatestservertest_temp01.dbf'size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
//創(chuàng)建數(shù)據(jù)表空間
create tablespace test_data
logging
datafile 'E:oracleproduct10.2.0oradatatestservertest_data01.dbf'size 32m
autoextend on
next 32m maxsize 2048m
extent management local;
//創(chuàng)建用戶并指定表空間
create user username identified by password
default tablespace test_data
temporary tablespace test_temp;
//給用戶授予權(quán)限
//一般用戶
grant connect,resource to username;
//系統(tǒng)權(quán)限
grant connect,dba,resource to username
//創(chuàng)建用戶
create user user01 identified by u01
//建表
create table test7272(id number(10),name varchar2(20),age number(4),joindate date default sysdate,primary key(id));
//存儲(chǔ)過(guò)程
//數(shù)據(jù)庫(kù)連接池
數(shù)據(jù)庫(kù)連接池負(fù)責(zé)分配、管理和釋放數(shù)據(jù)庫(kù)連接
//
//創(chuàng)建表空間
create tablespace thirdspace
datafile 'C:/Program Files/Oracle/thirdspace.dbf' size 10mautoextend on;
//創(chuàng)建用戶
create user binbin
identified by binbin
default tablespace firstspace
temporary tablespace temp;
//賦予權(quán)限
GRANT CONNECT, SYSDBA, RESOURCE to binbin
//null與""的區(qū)別
簡(jiǎn)單點(diǎn)說(shuō)null表示還沒(méi)new出對(duì)象,就是還沒(méi)開(kāi)辟空間
個(gè)對(duì)象裝的是空字符串。
//建視圖
create view viewname
as
sql
//建索引
create index indexname on tablename(columnname)
//在表中增加一列
alter table tablename add columnname columntype
//刪除一列
alter table tablename drop columnname
//刪除表格內(nèi)容,表格結(jié)構(gòu)不變
truncate table tableneme
//新增數(shù)據(jù)
insert into tablename()values()
//直接新增多條數(shù)據(jù)
insert into tablename()
selecte a,b,c
from tableabc
//更新數(shù)據(jù) new除了對(duì)象,但是這“”表示
update tablename set columnname=? where
//刪除數(shù)據(jù)
delete from tablename
where
//union語(yǔ)句
sql
union
sql
//case
case
when then
else
end
第三篇:SQL語(yǔ)句
SQL練習(xí)
一、設(shè)有如下的關(guān)系模式,試用SQL語(yǔ)句完成以下操作:
學(xué)生(學(xué)號(hào),姓名,性別,年齡,所在系)
課程(課程號(hào),課程名,學(xué)分,學(xué)期,學(xué)時(shí))
選課(學(xué)號(hào),課程號(hào),成績(jī))
1. 求選修了課程號(hào)為“C2”課的學(xué)生學(xué)號(hào)
2. 求選修了課程號(hào)為“C2”課的學(xué)生學(xué)號(hào)和姓名
3. 求沒(méi)有選修課程號(hào)為“C2”課的學(xué)生學(xué)號(hào)
4. 求選修了課程號(hào)為“C2”,又選修了課程號(hào)為“C3”課的學(xué)生學(xué)號(hào)
5.求選修了課程號(hào)為“C2”或“C3”課的學(xué)生學(xué)號(hào)
6.求選修了全部課程的學(xué)生學(xué)號(hào)
7.求至少選修了學(xué)號(hào)為“98002”的學(xué)生所學(xué)過(guò)的所有課程的學(xué)生的學(xué)號(hào)和姓名。
8.查詢學(xué)生選課表中的全部數(shù)據(jù)
9.查詢計(jì)算機(jī)系學(xué)生的姓名、年齡
10.查詢成績(jī)?cè)?0—80分之間的學(xué)生的學(xué)號(hào)、課程號(hào)和成績(jī)
11.查詢計(jì)算機(jī)系年齡在18—20之間且性別為“男”的學(xué)生的姓名和年齡
12.查詢成績(jī)?cè)?0分以上的學(xué)生的姓名、課程號(hào)和成績(jī),并按成績(jī)的降序排列結(jié)果。
13.查詢哪些課程沒(méi)有人選修,要求列出課程號(hào)和課程名。
14.查詢數(shù)學(xué)系成績(jī)?cè)?0分以上的學(xué)生的學(xué)號(hào),姓名
15.查詢課程號(hào)為“C02”的課程的最高分?jǐn)?shù)。
16.查詢計(jì)算機(jī)系學(xué)生的最大年齡和最小年齡。
17.統(tǒng)計(jì)每個(gè)系的學(xué)生人數(shù)。
18.統(tǒng)計(jì)每門課程的選課人數(shù)和考試最高分。
19.統(tǒng)計(jì)每個(gè)學(xué)生的選課門數(shù)和考試總成績(jī),并按選課門數(shù)的升序顯示結(jié)果。
20.查詢總成績(jī)超過(guò)200分的學(xué)生,要求列出學(xué)號(hào)、總成績(jī)。
21.用子查詢實(shí)現(xiàn)如下查詢:
(1)查詢選修了課程號(hào)“C01”的學(xué)生的姓名和所在系。
(2)查詢數(shù)學(xué)系成績(jī)?cè)?0分以上的學(xué)生的學(xué)號(hào)和姓名。
(3)查詢計(jì)算機(jī)系考試成績(jī)最高的學(xué)生的姓名。
22.刪除選課成績(jī)小于60分的學(xué)生的選課記錄。
23.將所有選修了課程“C01”的學(xué)生的成績(jī)加10分。
24.將計(jì)算機(jī)系所有選修了課程“計(jì)算機(jī)文化基礎(chǔ)”課程的學(xué)生的成績(jī)加10分。
25.創(chuàng)建查詢學(xué)生的學(xué)號(hào)、姓名、所在系、課程號(hào)、課程名、課程學(xué)分的視圖。
26.創(chuàng)建查詢每個(gè)學(xué)生的平均成績(jī)的視圖,要求列出學(xué)生學(xué)號(hào)和平均成績(jī)。
27.創(chuàng)建查詢每個(gè)學(xué)生的選課學(xué)分的視圖,要求列出學(xué)生學(xué)號(hào)及總學(xué)分。
第四篇:SQL語(yǔ)句
SQL語(yǔ)句,用友的SQL2000,通過(guò)查詢管理器寫的語(yǔ)句
1、查詢
2、修改
3、刪除
4、插入
表名:users 包含字段:id,sname,sage
查詢 select * from users查詢users表中所有數(shù)據(jù)
select id,sname,sage from users查詢users表中id,sname,sage字段所有數(shù)據(jù)
可以限定查詢條件比如:
select sname from users where sage>20查詢年齡大于20歲的所有人的名字
修改 update users set sname='李四',sage=22將users表中數(shù)據(jù)都改為姓名李四,年齡22
update users set sname='李四',sage=22 where id=1限定id為1的人的信息修改為
姓名李四,年齡22
可以加where條件。
刪除 delete from users where id=2刪除users表中id為2的一行數(shù)據(jù)delete from users 代表刪除users中所有數(shù)據(jù)
插入 insert into users(id,sname,sage)values(5,'劉三',21)插入一條數(shù)據(jù)
SQL四條最基本的數(shù)據(jù)操作語(yǔ)句:Insert,Select,Update和Delete。
例如:SELECT columns FROM tables;其中columns為列的名稱,tables為表格名稱
1、查詢:select 字段名 from 表名 where 條件
查找在表(如A)中符合條件的字段
2、修改:update 表名 set 字段名=‘所要修改的內(nèi)容’
修改在表(如A)中的字段的值為:所要修改的內(nèi)容
3、刪除: delete from 表名 where 條件
刪除符合條件的表(如A)中的信息
4、插入: insert into 表名(字段名)(‘插入內(nèi)容’)
在表(如A)中插入字段為:插入內(nèi)容 的一條信息
第五篇:常用SQL語(yǔ)句
一、創(chuàng)建數(shù)據(jù)庫(kù)
create database 數(shù)據(jù)庫(kù)名
on(name='數(shù)據(jù)庫(kù)名_data',size='數(shù)據(jù)庫(kù)文件大小',maxsize='數(shù)據(jù)庫(kù)文件最大值',filegrowth=5%,//數(shù)據(jù)庫(kù)文件的增長(zhǎng)率
filename='數(shù)據(jù)庫(kù)存放的位置')
log on
(name='數(shù)據(jù)庫(kù)名_log',size='數(shù)據(jù)庫(kù)文件大小',maxsize='數(shù)據(jù)庫(kù)文件最大值',filegrowth=5%,//數(shù)據(jù)庫(kù)文件的增長(zhǎng)率
filename='數(shù)據(jù)庫(kù)存放的位置')
二、創(chuàng)建數(shù)據(jù)表
create table 表名
(字段名 字段類型 是否為空 primary key//是否為主鍵)
三、select語(yǔ)句
1、去除重復(fù)查詢
select distinct 字段名 from 表名
2、按條件查詢
select * from 表名 where 條件
3、排序desc升序/asc降序
select 字段名 from 表名 order by desc/asc
四、刪除語(yǔ)句
delect from 表名 where 條件
五、修改語(yǔ)句
update from 表名 set 字段名1=‘字段值’,字段名2=‘字段值’ where 條件
六、插入語(yǔ)句
insert into 表名(字段名)values(字段值)//字段名與字段值一一對(duì)應(yīng)
七、創(chuàng)建存儲(chǔ)過(guò)程
use 數(shù)據(jù)庫(kù)名
go
create proc 存儲(chǔ)過(guò)程名
as
要存儲(chǔ)在里面的SQL語(yǔ)句
八、sql分頁(yè)
select top 查詢的條數(shù) *
from表名 where 主鍵 not in(select top 第幾條開(kāi)始查詢 id from 表名 order by 主鍵)order by 主鍵 desc