第一篇:SQL語(yǔ)言匯總
1.UPDATE MARK
SET 總分=語(yǔ)文+數(shù)學(xué)+英語(yǔ)
SELECT 準(zhǔn)考證號(hào),姓名,總分
FROM MARK
WHERE 語(yǔ)文>=75 AND數(shù)學(xué)>=75 AND 英語(yǔ)>=75 AND 語(yǔ)文+數(shù)學(xué)+英語(yǔ)>=240
ORDER BY 總分 DESC
UPDATE MARK
SET 修正分?jǐn)?shù)=高考分?jǐn)?shù)*1.3
WHERE 籍貫='云南' OR 籍貫='福建'
SELECT AVG(高考分?jǐn)?shù))as平均分
FROM MARK
GROUP BY 性別
SELECT *
FROM cj
WHERE 期中成績(jī)>=80 OR 期末成績(jī)>=80 ORDER BY 課程號(hào) ASC
UPDATE cj
SET平均成績(jī)=期中成績(jī)*0.2+期末成績(jī)*0.8
SELECT 書號(hào),書名,作者
FROM gm
WHERE 書號(hào) LIKE '理*' AND 單價(jià)>20 ORDER BY 單價(jià) ASC
UPDATE gm
SET 金額=單價(jià)*數(shù)量
UPDATE Sale
SET 銷售金額=銷售數(shù)量*單價(jià)
UPDATE Wage
SET 實(shí)發(fā)工資=工資+獎(jiǎng)金
SELECT 姓名,實(shí)發(fā)工資
FROM Wage
WHERE 姓名 LIKE '*輝'OR 姓名 LIKE ' *輝*' ORDER BY 年齡 DESC
SELECT 部門號(hào), COUNT(*)as人數(shù)
FROM zhigong
GROUP BY 部門號(hào)
UPDATE kaoshi
SET平均成績(jī)=筆試成績(jī)*0.6+上機(jī)成績(jī)*0.4
SELECT 考號(hào),姓名,平均成績(jī)
FROM kaoshi
WHERE 姓名 LIKE '黃*'
DELETE *
FROM mark
WHERE 學(xué)號(hào)='1003'
SELECT 學(xué)號(hào),課程號(hào),期末成績(jī)
FROM mark
WHERE 學(xué)號(hào) LIKE '*1'
ORDER BY 期末成績(jī) DESC
UPDATE fk
SET 超期罰款=單價(jià)*超期天數(shù)*0.005
SELECT *
FROM fk
WHERE 單價(jià)>=50 OR 超期天數(shù)>30 ORDER BY 超期罰款 DESC
UPDATE gp
SET 浮動(dòng)盈虧=(市場(chǎng)現(xiàn)價(jià)-買入加個(gè))*買入數(shù)量
SELECT 股票代碼,買入時(shí)間,浮動(dòng)盈虧 FROM gp
WHERE 股票代碼 LIKE '6*' AND 浮動(dòng)盈虧>0 ORDER BY 買入時(shí)間 ASC
UPDATE ah
SET 年齡=年齡+1
SELECT 寢室,COUNT(*)as 愛(ài)好球類人數(shù) FROM ah
WHERE 愛(ài)好 LIKE '*球'
GROUP BY 寢室
UPDATE JHKC
SET 總價(jià)=單價(jià)*庫(kù)存量
SELECT 設(shè)備編號(hào),設(shè)備名稱,單價(jià)
FROM JHKC
WHERE 庫(kù)存量<300 AND 單價(jià)<500 ORDER BY 單價(jià) DESC
UPDATE HCSK
SET 票價(jià)=600
WHERE 航班號(hào)=F807
SELECT 航班號(hào),起飛日期,票價(jià)
FROM HCSK
WHERE 出發(fā)地='福州' AND 目的地='巴黎' ORDER BY 票價(jià) ASC
第二篇:SQL語(yǔ)言
1.輸出任意兩個(gè)字符串變量的值(參考代碼)
declare @v1 varchar(12),@V2 varchar(12)
set @v1='中國(guó)'
set @v2='你好!'
select @v1+@v2
2.為以下程序糾錯(cuò)
declare @v1 varchar(12),@V2 varchar(10)
set @v1='中國(guó)'
set @v2='你好!'
set @s='嗎!'
select @v1+@v2+@s
3.運(yùn)行以下代碼,觀察以下全局變量的功能
select 34@@connections 返回當(dāng)前服務(wù)器的連接數(shù)目
select 1@@rowcount 返回上一條T-SQL語(yǔ)句影響的數(shù)據(jù)行數(shù) select @@error返回上一條T-SQL語(yǔ)句執(zhí)行后的錯(cuò)誤號(hào) select @@procid返回當(dāng)前存儲(chǔ)過(guò)程的ID號(hào)
select @@remserver 返回登錄記錄中遠(yuǎn)程服務(wù)器的名字 select @@spid返回當(dāng)前服務(wù)器進(jìn)程的ID標(biāo)識(shí)
select @@version 返回當(dāng)前SQL Server服務(wù)器的版本和處理器類型 select @@language 返回當(dāng)前SQL Server服務(wù)器的語(yǔ)言
select @@connections
4.輸入以下代碼并理解其含意
bggin
if 3>5
select 'true'
else print 'false'
end
go
begin
if 'a'<'A'
select 'true'
else print 'false'
end
go
begin
if '張'>'李'
select 'true'
else print 'false'
end
go
begin
if getdate()>2008-10-10
print'true'
else print'false'
end
5.附加數(shù)據(jù)庫(kù)student,并進(jìn)行以下操作
use student
select * from xsda
以XSDa表為例,如果平均成績(jī)高于75分,則顯示“不錯(cuò)!”,否則,顯示“加油呀!”。
declare @av1 char(12), @av2 char(12)
set @av1='不錯(cuò)!'
set @av2='加油!'
if(select avg(總學(xué)分)from xsda)>75
begin
select @av1
end
else
select @av2
編寫一個(gè)程序,顯示每一同學(xué)的成績(jī)等級(jí)
select xh,zf,dj=
case
when zf>70 then '優(yōu)秀'
when zf>65 then '良好'
when zf>=60 then '合格'
else '不合格'
end
from xsdn
6.求1-100偶數(shù)和(參考代碼)
declare @i int,@s int/*定義變量*/
set @i=0/*變量賦初值*/
set @s=0
while @i<=100/*條件*/
begin
set @s=@s+@i/*累加求和*/
set @i=@i+2/*偶數(shù)*/
end
print @s
7.求10!
8.為以下程序糾錯(cuò)(求1-100的積)
declare @i int,@s int
set @i=0
set @s=0
while @i<=100 begin
set @s=@s*@iset @i=@i+2 end
print @s
第三篇:SQL語(yǔ)言以及SQL
SQL語(yǔ)言以及SQL*PLUS工具
1.SQL語(yǔ)言組成:
? 數(shù)據(jù)查詢語(yǔ)言(DQL):SELECT;
? 數(shù)據(jù)操縱語(yǔ)言(DML):INSERT、UPDATE、DELETE; ? 事務(wù)控制語(yǔ)言(TCS):COMMIT、ROLLBACK;
? 數(shù)據(jù)定義語(yǔ)言(DDL):CREATE、DROP、ALTER;
? 數(shù)據(jù)控制語(yǔ)言(DCL):GRANT、REVOKE;
2.數(shù)據(jù)查詢語(yǔ)言(DQL):
? 一般格式:
1.SELECT [ALL|DISTINCT] <目標(biāo)列表達(dá)式> [, <目標(biāo)列表達(dá)式>]…
2.FROM <表名或者視圖名> [, <表名或者視圖名>]…
3.[WHERE <條件表達(dá)式>]
4.[GROUP BY <列名1> [HAVING <條件表達(dá)式>]]
5.[ORDER BY <列名2> [ASC|DESC];
? 實(shí)例:
6.SELECT empno,ename FROM emp WHERE ename<>'a' order by empno;
3.數(shù)據(jù)操縱語(yǔ)言(DML):
? INSERT:
? 一般格式:
7.INSERT
8.INTO <表名> [(<屬性列1>[, <屬性列2>]…)]
9.VALUES(<常量1>[, <常量2>]…);
? 實(shí)例:
INSERT INTO emp(empno,ename)VALUES(1,’test1’);
? UPDATE:
? 一般格式:
10.UPDATE<表名>
11.SET <列名>=<表達(dá)式> [,<列名>=<表達(dá)式>]…
12.[WHERE <條件>];
? 實(shí)例:
13.UPDATE emp SET ename=’test2’ WHERE empno=1;
? DELETE:
? 一般格式:
14.DELETE
15.FROM <表名>
16.[WHERE <條件>];
? 實(shí)例:
DELETE FROM emp WHERE empno=1;
4.事務(wù)控制語(yǔ)言(TCS):
? COMMIT:
? 說(shuō)明:
5.6.7.8.17.放在DML之后,提交事務(wù)。? 一般格式: 18.COMMIT;? 實(shí)例: INSERT INTO emp(empno,ename)VALUES(1,’test1’);COMMIT;? ROLLBACK: ? 說(shuō)明: 19.放在DML之后,回滾事務(wù)。? 一般格式: 20.ROLLBACK;? 實(shí)例: INSERT INTO emp(empno,ename)VALUES(1,’test1’);? ROLLBACK;課后練習(xí)(2小時(shí)): ? 用各種組合反復(fù)練習(xí)數(shù)據(jù)查詢語(yǔ)言DQL; ? 用各種組合反復(fù)練習(xí)數(shù)據(jù)操縱語(yǔ)言DML; ? 和DML結(jié)合反復(fù)練習(xí)事務(wù)控制語(yǔ)言TCS。SQL*PLUS簡(jiǎn)介: ? 是Oracle數(shù)據(jù)庫(kù)提供的用于和數(shù)據(jù)庫(kù)交互的工具; ? 數(shù)據(jù)庫(kù)管理員管理數(shù)據(jù)庫(kù)的主要工具; ? 支持SQL-2和SQL-3標(biāo)準(zhǔn); ? 支持Oracle PL/SQL語(yǔ)言; ? 支持一套Oracle公司定義的SQL*PLUS操縱語(yǔ)言。SQL*PLUS語(yǔ)言介紹: ? 不是標(biāo)準(zhǔn)語(yǔ)言; ? 可以縮寫(一般取英文單詞的前4位); ? 不用加分號(hào); ? 分成數(shù)據(jù)庫(kù)訪問(wèn)、輸出格式設(shè)置、文本編輯、執(zhí)行程序、環(huán)境設(shè)置、其他等幾類。常用的SQL*PLUS命令:
? CONNECT(CONN):連接數(shù)據(jù)庫(kù):
21.CONN SCOTT/TIGER@FIS
? EXIT:退出SQL*PLUS;
? DESCRIBE(DESC):顯示數(shù)據(jù)庫(kù)對(duì)象的結(jié)構(gòu):
22.DESC emp
? SHOW:顯示系統(tǒng)信息:
23.SHOW user
? EDIT:文本編輯;
? RUN(/):運(yùn)行前一命令;
? SAVE:保存前一命令:
24.SAVE c:temptest.txt
? PASSWORD(PASSW):修改當(dāng)前用戶的口令; ? SPOOL:將輸出結(jié)果保存到本地硬盤上
SPOOL c:temptest.txt SELECT * FORM emp;SPOOL OFF
START(@):路徑*.sql執(zhí)行腳本 column 字段名 format a35set line 100
第四篇:SQL 語(yǔ)言
SQL語(yǔ)言
create database student
on primary
(name=student_data1,filename='c:student_data1.mdf',size=10M,maxsize=100M,filegrowth=10%)
filegroupstudent_group分組
(name=student_data2,filename='c:student_data2.ndf',size=10M,maxsize=100M,filegrowth=10%)
log on
(name=student_log1,filename='c:student_data1.ldf',size=10M,maxsize=100M,filegrowth=10%)
create table xi
(系編號(hào) char(2)primary key,系名varchar(20))主碼
insert into xi values('01','物理系')
insert into xi values('02','化學(xué)系')
select *from xi查詢
create table student
(學(xué)號(hào) char(11)primary key,姓名varchar(10),民族 char(2)default'漢',出生日期datetime ,獎(jiǎng)學(xué)金 money check(獎(jiǎng)學(xué)金<=8000), 系編號(hào) char(2)foreign key references xi(系編號(hào)))
默認(rèn)值,約束,外碼
insert into student values('20090214201','馬帥', '漢','1990-1-8',1500, '01')
insert into student values('20100214202','周伊','回' ,'1989-2-4',500,'02')
update student set 出生日期='1911-3-1'where 學(xué)號(hào) ='20100214201'
更新數(shù)據(jù)
select* from student/ 3
alter table student add 性別 char(2)check(性別='男'or 性別='女')
增加列
update student set 性別 ='男' where 學(xué)號(hào) ='20090214201' update student set 性別 ='女' where 學(xué)號(hào) ='20100214202' select student* from student where left(學(xué)號(hào),4)=’2009’ 查詢大三學(xué)生的詳細(xì)信息
create table kc
(課程編號(hào) char(2),課程名varchar(20))
alter table kc alter column 課程編號(hào) char(2)not null 修改字段
alter table kc addconstraint pk_kcprimary key(課程編號(hào))加主碼(加主碼的字段不能為空)
insert into kc values('01','語(yǔ)文')
insert into kc values('02','數(shù)學(xué)')
insert into kc values('03','英語(yǔ)')
update kc set課程名 ='歷史學(xué)' where 課程編號(hào)= '05' execute sp_rename '課程編號(hào)','課程名','column'
改名
create table cj
(學(xué)號(hào) char(11)foreign key references student(學(xué)號(hào)))alter table cj add 課程編號(hào) char(2)
增加列
alter table cj add foreign key(課程編號(hào))references kc(課程編號(hào))
增加外碼
alter table cj add 成績(jī)varchar(3)
insert into cj values('20100214201','01','69')
insert into cj values('20100214201','02','90')
insert into cj values('20100214201','03','56')
insert into cj values('20100214202','01','26')
insert into cj values('20100214202','02','54')
insert into cj values('20100214202','03','89')
1.select student.*,課程名,成績(jī) ,系名 from student ,kc,cj ,xi where student.系編號(hào) = xi.系編號(hào)and cj.學(xué)號(hào)=student.學(xué)號(hào) and kc.課程編號(hào)=cj.課程編號(hào) and student.學(xué)號(hào)='20100214202'
查詢學(xué)號(hào)為20100214202的學(xué)生student表的全部?jī)?nèi)容和每門課的成績(jī)及所在系
2.select 姓名,課程名,成績(jī),系名 from student,kc,cj,xi where student.學(xué)號(hào) = cj.學(xué)號(hào) and student.系編號(hào)=xi.系編號(hào) and cj.課程編號(hào)= kc.課程編號(hào) and month(getdate())=month(student.出生日期)and day(getdate())= day(student.出生日期)
查詢今天過(guò)生日的學(xué)生的姓名每門課的成績(jī)及系名
3.select student.學(xué)號(hào),課程名,成績(jī),系名 from student,kc,cj,xi where student.學(xué)號(hào)=cj.學(xué)號(hào) and kc.課程編號(hào)=cj.課程編號(hào) and student.系編號(hào)=xi.系編號(hào) and cj.學(xué)號(hào) =student.學(xué)號(hào) 查看所有學(xué)生的學(xué)號(hào)的每門課的成績(jī)及系名
4.Select count()as 學(xué)生數(shù) from student ,xi where student.系編號(hào)=xi.系編號(hào)and xi.系名=’物理系’
查看物理系的學(xué)生數(shù)
5.Select student.姓名,avg(cj.成績(jī))as平均成績(jī) from student, cj where student.學(xué)號(hào)=cj.學(xué)號(hào)
查看所有學(xué)生的平均成績(jī)
第五篇:SQL語(yǔ)言(模版)
SQL語(yǔ)言
1.數(shù)據(jù)定義:
a)Create 創(chuàng)建
b)Drop 刪除對(duì)象
數(shù)據(jù)表
? 表的創(chuàng)建:create table 表名(字段名1 類型 primary key注:主鍵,字段名2 類
型,……, check 表級(jí)約束)
例:S(Sno,Sname,Sex,Age)
Create table S(Sno char(8)primary key, Sname char(4), Sex char(1), age smallint)說(shuō)明:
文本->char()
數(shù)值->numeric(m,n), int, smallint
日期/時(shí)間->date
備注->memo Create table C(Cno char(6)Primary key, Cname char(10), Tno char(6))? 刪除表
Drop table 表名
例:drop table S
? 修改表結(jié)構(gòu)
Alter table 表名 add/drop/alter 字段名
例題
S表 添加出生年月
Alter table S add Borndate date
S表刪除年齡
Alter table S drop Age
S表 Sno 文本長(zhǎng)度為6
Alter table S alter Sno Char(6)
2.數(shù)據(jù)查詢:
Select 字段名 From 表名 [Where 條件 ] [Group by分組字段名 [ having 分組條件] ]
[order by 排序字段[asc/deac]]
例:查詢女同學(xué)的姓名
Select Sname from S where Sex=”女”
查詢學(xué)生表中的所有內(nèi)容
Select * from 學(xué)生
查詢男生和女生的人數(shù)(按性別統(tǒng)計(jì)人數(shù))
Select 性別,count(學(xué)生編號(hào))from 學(xué)生 group by 性別
查詢每門課程的平均分
Select 課程編號(hào),avg(成績(jī))from 選課成績(jī) group by 課程編號(hào)
查詢平均分大于85分的課程
Select 課程編號(hào)from 選課成績(jī) group by 課程編號(hào) having avg(成績(jī))>85
查詢教師信息,要求結(jié)果按照年齡排序
Select *from 教師 order by 工作時(shí)間 asc 按性別對(duì)教師工作時(shí)間排序查詢
Select *from 教師 order by 性別,工作時(shí)間
3.數(shù)據(jù)操縱:——> 針對(duì)表中記錄
? 插入數(shù)據(jù)
Insert into 表名(字段名列表)values(字段值列表)例 Insert into S(Sno,Sname)values(“155161”,”張三”)? 修改/更新數(shù)據(jù)
Upate 表名 set 字段值=……
例 update 學(xué)生 set 年齡=年齡+1
? 刪除數(shù)據(jù)
Delete from 表名 [where 條件]
例:Delete from 選課成績(jī) where 成績(jī)<70 Delete from S
4.數(shù)據(jù)控制:grant/revoke