1.SQL語句通常分成4類:數據查詢語言、數據操作語言、數據定義語言和數據控制語言
2.設置日期格式
SET DATEFORMAT mdy GO DECLARE @datevar datetime SET @datevar = ' 03/21/2013 ' SELECT @datevar
?
3.局部變量與全局變量
? 局部變量:用DECLARE語句聲明,用SET語句為其賦值
??? 定義整形局部變量和一個可變長字符局部變量并賦值
DECLARE @local_variable_int int , @local_variable_char nvarchar ( 9 ) SELECT @local_variable_int = 40 SET @local_variable_char = ' welcome to guangzhou ' SELECT @local_variable_int SELECT @local_variable_char GO
? 全局變量:是SQL Server 系統所提供并賦值的變量,用戶不能建立全局變量,也不能使用SET語句去修改全局變量的值,全局變量的名字以@@開頭
? 常用的全局變量:
? @@connections:返回今天試圖連接到本服務器的連接數目
? @@rowcount:返回上一條T-SQL語句影響到的數據行數
? @@error:返回上一條T-SQL語句執行后的錯誤號
? @@procid:返回當前存儲過程的ID標識
? @@remserver:返回登錄記錄中遠程服務器的名字
? @@spid:返回當前服務器進程的ID標識
? @@version:返回當前SQL Server 服務器的版本、處理器類型等
4.數學函數
SELECT ABS ( - 2 ) /* 絕對值 */ , SQRT ( 16 ) /* 開方 */ , POWER ( 4 , 2 ) /* 平方 */ , RAND ( 2 ) /* 返回0到1之間的隨機float值 */
5.字符串函數
SELECT SUBSTRING ( ' MICROSOFT SQL SERVER 2012 ' , 11 , 10 ), /* SQL SERVER */ REVERSE ( ' MICROSOFT ' ) /* 逆序返回 */
?6. 流程控制語言
?? CASE表達式
CASE expression { WHEN expression THEN result} [ ,...n ] [ ELSE result ] END
?? BEGIN... END
BEGIN Sql_statement END
??IF...ELSE
IF Boolean_expression Sql_statement [ ELSE [IF Boolean_expression ] Sql_statement ]
? WHILE語句
WHILE boolean_expression sql_statement [ BREAK ] {Sql_statement} [ CONTINUE ] {Sql_statement}
7.ERA模型
? 在ERA模型中,實體一般用長方形表示,關系一般用棱形,屬性一般用橢圓形
?
8 從student 表檢索名字的第二個字不是“紅”或“虹”的同學的資料;
? 李紅[大](student表中有兩個學生“李紅”同名同姓,分別以李紅[大]、李紅[小]加以區分)同學的信息
select * from student where student_name like ' _[^紅,虹]% ' select * from student where student_name like ' 李紅b[大b] ' escape ' b '
??在ESCAPE 子句中,定義"b"為轉義字符,這樣,like 子句中緊跟字符"b"后面的字符被定義為匹配字符而不再是通配符
?
9.多表查詢:基于主鍵和外鍵指定查詢條件, 連接條件可使用"主鍵=外鍵"
? 從student、course及student_course 三個表中檢索學生的學號,姓名,學習課程號、學習課程名及課程成績
select student.student_id,student.student_name,student_course.course_id,course.course_name,student_course.grade
from student, course,student_course where student.student_id = student_course.student_id and course.course_id = student_course.course_id
10.使用UNION子句:把兩個或多個SELECT 語句查詢的結果組合成一個結果集
select student_id,student_name from student union select teacher_id,teacher_name from teacher
11.Having 子句 是針對Group By 子句的,沒有group by 子句時使用having 子句是沒有意義的
select student_id, sum (grade) from student_course group by student_id having sum (grade) > 450
12.使用compute 和coupute by 子句
select student_id ,grade from student_course order by student_id compute sum (grade)
?
select student_id,grade from student_course order by student_id compute sum (grade) by student_id
13.若建臨時表,必須在表前設置#(局部臨時表)或##(全局臨時表)#temp_grade
14.刪除表的列:
alter table [ dbo ] . [ Students ] drop column [ student_num ]
? 修改表的列
alter table [ dbo ] . [ Students ] alter column [ course_id ] int not null
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
