-------------sql function-------------
---判斷資料庫是否存在
if exists (select * from sys.databases where name = '資料庫名')
drop database [資料庫名]
--判斷表是否存在
if exists (select * from sysobjects where id = object_id(n'[表名]') and objectproperty(id, n'isusertable') = 1)
drop table [表名]
--判斷儲存過程是否存在
if exists (select * from sysobjects where id = object_id(n'[pro]') and objectproperty(id, n'isprocedure') = 1)
print 'exists'
else
print 'not exists'
--判斷函式是否存在
if object_id (n'函式名') is not null
drop function dnt_split
--left(),right(),charindex()----
begin
declare @str varchar(20)
set @str='hello every body';
print left(@str,7) --print result->hello e
print right(@str,7) --print result->ry body
print charindex(' ',@str) --print result->6
end-- cast()資料型別轉換函式---------
begin
select cast('123' as int)
select cast(123.0 as varchar(6))
select cast('12.5' as decimal(5,0)) --四捨五入
select cast('12' as float)
end-- 將查詢出來的多列組成為一列的字串----
begin
select '學生編號:'+scstuno+'成績:'+cast(scscore as varchar(6)) as 學生成績 from score_tb
end--sql while迴圈 計算1加到100的和-----
begin
declare @sum int,@num int
set @num=1
set @sum=0
while @num<101
begin
set @sum=@sum+@num
set @num=@num+1
endprint @sum
end--sql while迴圈 計算1~100之間奇數的和
begin
declare @sum int,@num int
set @sum=0
set @num=1
while @num<101
begin
set @num=@num+1
if((@num%2)=0)
continue
else
begin
set @sum=@sum+@num
if(@num=49)
break
endend
print @sum
end--根據查詢的每個字段內容給予自定義資料--
select stuname,cursname,
case
when scscore>=85 then '優秀'
when scscore>=75 and scscore<85 then '良好'
when scscore>=60 and scscore<75 then '合格'
when scscore<60 then '不合格'
endfrom score_tb sc,student_tb stu,course_tb cur where sc.scstuno=stu.stuno and cur.cursno=sc.sccursno
--自定義函式---
create function funselectscore(@score float)
returns varchar(12)
asbegin
return
case
when @score>=85 then '優秀'
when @score>=75 and @score<85 then '良好'
when @score>=60 and @score<75 then '合格'
when @score<60 then '不合格'
endend
--呼叫函式
select stuname,cursname,dbo.funselectscore(scscore) --注意:呼叫函式是一定要加上 dbo.字首
from score_tb sc,student_tb stu,course_tb cur where sc.scstuno=stu.stuno and cur.cursno=sc.sccursno
SQL高階高階
select top 50 percent from websites mysql 語法 oracle 語法 select column name s from table name limit number sql like 操作符 like 操作符用於在 where 子句中搜尋列中的指定模式。s...
SQL 基礎 高階高階
sql高階 1 top子句 top 子句用於規定要返回的記錄的數目。select top 2 from persons select top 50 percent from persons 3 萬用字元 1 通過使用 not 關鍵字,我們可以從 persons 表中選取居住在不包含 lon 的城市裡...
Mysql高階高階(sql優化)
目錄 一 mysql高階有哪些東西?1 mysql的架構 2 索引優化分析 3 查詢擷取分析 4 mysql鎖機制 5 主從複製 架構這裡我們主要說的是引擎 看你的mysql現在已提供什麼儲存引擎 看你的mysql當前預設的儲存引擎 show variables like storage engin...