学习SQL语句之SQL语句大全.docx
- 文档编号:9571883
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:13
- 大小:19.72KB
学习SQL语句之SQL语句大全.docx
《学习SQL语句之SQL语句大全.docx》由会员分享,可在线阅读,更多相关《学习SQL语句之SQL语句大全.docx(13页珍藏版)》请在冰豆网上搜索。
学习SQL语句之SQL语句大全
--语句功能 --数据操作 SELECT--从数据库表中检索数据行和列 INSERT--向数据库表添加新数据行 DELETE--从数据库表中删除数据行 UPDATE--更新数据库表中的数据 --数据概念 CREATETABLE--创建一个数据库表 DROPTABLE--从数据库中删除表 ALTERTABLE--修改数据库表结构 CREATEVIEW--创建一个视图 DROPVIEW--从数据库中删除视图 CREATEINDEX--为数据库表创建一个索引 DROPINDEX--从数据库中删除索引 CREATEPROCEDURE--创建一个存储进程 DROPPROCEDURE--从数据库中删除存储进程 CREATETRIGGER--创建一个触发器 DROPTRIGGER--从数据库中删除触发器 CREATESCHEMA--向数据库添加一个新模式 DROPSCHEMA--从数据库中删除一个模式 CREATEDOMAIN--创建一个数据值域 ALTERDOMAIN--改变域概念 DROPDOMAIN--从数据库中删除一个域 --数据操纵 GRANT--授予用户访问权限 DENY--拒绝用户访问 REVOKE--解除用户访问权限 --事务操纵 COMMIT--终止当前事务 ROLLBACK--中止当前事务 SETTRANSACTION--概念当前事务数据访问特点 --程序化SQL DECLARE--为查询设定游标 EXPLAN--为查询描述数据访问打算 OPEN--检索查询结果打开一个游标 FETCH--检索一行查询结果 CLOSE--关闭游标 PREPARE--为动态执行预备SQL语句 EXECUTE--动态地执行SQL语句 DESCRIBE--描述预备好的查询 ---局部变量 declare@idchar(10) --set@id='' select@id=''
---全局变量 ---必须以@@开头
--IFELSE declare@xint@yint@zint select@x=1@y=2@z=3 if@x>@y print'x>y'--打印字符串'x>y' elseif@y>@z print'y>z' elseprint'z>y'
--CASE usepangu updateemployee sete_wage= case whenjob_level=’1’thene_wage* whenjob_level=’2’thene_wage* whenjob_level=’3’thene_wage* elsee_wage* end
--WHILECONTINUEBREAK declare@xint@yint@cint select@x=1@y=1 while@x<3 begin print@x--打印变量x的值 while@y<3 begin select@c= +@y print@c--打印变量c的值 select@y=@y+1 end select@x=@x+1 select@y=1 end
--WAITFOR --例等待1小时2分零3秒后才执行SELECT语句 waitfordelay’01:
02:
03’ select*fromemployee --例等到晚上11点零8分后才执行SELECT语句 waitfortime’23:
08:
00’ select*fromemployee
***SELECT***
select*(列名)fromtable_name(表名)wherecolumn_nameoperator value ex:
(宿主) select*fromstock_informationwherestockid=str(nid) stockname='str_name' stocknamelike'%findthis%' stocknamelike'[a-zA-Z]%'---------([]指定值的范围) stocknamelike'[^F-M]%'---------(^排除指定范围) ---------只能在使用like关键字的where子句中使用通配符) orstockpath='stock_path' orstocknumber<1000 andstockindex=24 notstock***='man' stocknumberbetween20and100 stocknumberin(10,20,30) orderbystockiddesc(asc)---------排序,desc-降序,asc-升序 orderby1,2---------by列号 stockname=(selectstocknamefromstock_informationwhere stockid=4) ---------子查询 ---------除非能确保内层select只返回一个行的值, ---------否则应在外层where子句中用一个in限定符 selectdistinctcolumn_nameformtable_name--------- distinct指定检索特有的列值,不重复 selectstocknumber,"stocknumber+10"=stocknumber+10from table_name selectstockname,"stocknumber"=count(*)fromtable_name groupbystockname ---------groupby将表按行分组,指定列中有相同的值 havingcount(*)=2---------having选定指定的组
select* fromtable1,table2 where*=-------- 左外部连接,table1中有的而table2中没有得以null表示 =*--------右外部连接
selectstocknamefromtable1 union[all]-----union合并查询结果集,all-保留重复行 selectstocknamefromtable2
***insert***
insertintotable_name(Stock_name,Stock_number)value ("xxx","xxxx") value(selectStockname,Stocknumberfrom Stock_table2)---value为select语句
***update***
updatetable_namesetStockname="xxx"[whereStockid=3] Stockname=default Stockname=null Stocknumber=Stockname+4
***delete***
deletefromtable_namewhereStockid=3 truncatetable_name-----------删除表中所有行,仍保持表的完整性 droptabletable_name---------------完全删除表
***altertable***---修改数据库表结构
altertableaddcolumn_namechar
(2) null..... sp_helptable_name----显示表已有特征 createtabletable_name(namechar(20),agesmallint,lname varchar(30)) insertintotable_nameselect.........-----实现删除列的方法(创建新表) altertabletable_namedropconstraintStockname_default---- 删除Stockname的default约束
***function(/*经常使用函数*/)***
----统计函数---- AVG--求平均值 COUNT--统计数目 MAX--求最大值 MIN--求最小值 SUM--求和
--AVG usepangu selectavg(e_wage)asdept_avgWage fromemployee groupbydept_id
--MAX --求工资最高的员工姓名 usepangu selecte_name fromemployee wheree_wage= (selectmax(e_wage) fromemployee)
--STDEV() --STDEV()函数返回表达式中所有数据的标准差
--STDEVP() --STDEVP()函数返回总体标准差
--VAR() --VAR()函数返回表达式中所有值的统计变异数
--VARP() --VARP()函数返回总体变异数
----算术函数----
/***三角函数***/ SIN(float_expression)--返回以弧度表示的角的正弦 COS(float_expression)--返回以弧度表示的角的余弦 TAN(float_expression)--返回以弧度表示的角的正切 COT(float_expression)--返回以弧度表示的角的余切 /***反三角函数***/ ASIN(float_expression)--返回正弦是FLOAT值的以弧度表示的角 ACOS(float_expression)--返回余弦是FLOAT值的以弧度表示的角 ATAN(float_expression)--返回正切是FLOAT值的以弧度表示的角 ATAN2(float_expression1,float_expression2) --返回正切是float_expression1/float_expres-sion2的以弧度表示的角 DEGREES(numeric_expression) --把弧度转换为角度返回与表达式相同的数据类型可为 --INTEGER/MONEY/REAL/FLOAT类型 RADIANS(numeric_expression)--把角度转换为弧度返回与表达式相同的数据类型可为 --INTEGER/MONEY/REAL/FLOAT类型 EXP(float_expression)--返回表达式的指数值 LOG(float_expression)--返回表达式的自然对数值 LOG10(float_expression)--返回表达式的以10为底的对数值 SQRT(float_expression)--返回表达式的平方根 /***取近似值函数***/ CEILING(numeric_expression)--返回>=表达式的最小整数返回的数据类型与表达式相同可为 --INTEGER/MONEY/REAL/FLOAT类型 FLOOR(numeric_expression)--返回<=表达式的最小整数返回的数据类型与表达式相同可为 --INTEGER/MONEY/REAL/FLOAT类型 ROUND(numeric_expression)--返回以integer_expression 为精度的四舍五入值返回的数据 --类型与表达式相同可为INTEGER/MONEY/REAL/FLOAT类型 ABS(numeric_expression)--返回表达式的绝对值返回的数据类型与表达式相同可为 --INTEGER/MONEY/REAL/FLOAT类型 SIGN(numeric_expression)--测试参数的正负号返回0零值1正数或-1负数返回的数据类型 --与表达式相同可为INTEGER/MONEY/REAL/FLOAT类型 PI()--返回值为π即 RAND([integer_expression])--用任选的[integer_expression]做种子值得出0-1 间的随机浮点数
----字符串函数---- ASCII()--函数返回字符表达式最左端字符的ASCII码值 CHAR()--函数用于将ASCII码转换为字符 --如果没有输入0~255之间的ASCII码值CHAR函数会返回一个NULL值 LOWER()--函数把字符串全部转换为小写 UPPER()--函数把字符串全部转换为大写 STR()--函数把数值型数据转换为字符型数据 LTRIM()--函数把字符串头部的空格去掉 RTRIM()--函数把字符串尾部的空格去掉 LEFT(),RIGHT(),SUBSTRING()--函数返回部分字符串 CHARINDEX(),PATINDEX()--函数返回字符串中某个指定的子串出现的开始位置 SOUNDEX()--函数返回一个四位字符码 --SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0值 DIFFERENCE()--函数返回由SOUNDEX函数返回的两个字符表达式的值的不同 --0两个SOUNDEX函数返回值的第一个字符不同 --1两个SOUNDEX函数返回值的第一个字符相同 --2两个SOUNDEX函数返回值的第一二个字符相同 --3两个SOUNDEX函数返回值的第一二三个字符相同 --4两个SOUNDEX函数返回值完全相同
QUOTENAME()--函数返回被特定字符括起来的字符串 /*selectquotename('abc','{')quotename('abc') 运行结果如下 ----------------------------------{ {abc}[abc]*/
REPLICATE()--函数返回一个重复character_expression指定次数的字符串 /*selectreplicate('abc',3)replicate('abc',-2) 运行结果如下 ---------------------- abcabcabcNULL*/
REVERSE()--函数将指定的字符串的字符排列顺序倒置 REPLACE()--函数返回被替换了指定子串的字符串 /*selectreplace('abc123g','123','def') 运行结果如下 ---------------------- abcdefg*/
SPACE()--函数返回一个有指定长度的空白字符串 STUFF()--函数用另一子串替换字符串指定位置长度的子串
----数据类型转换函数---- CAST()函数语法如下 CAST()(
selectcast(100+99aschar)convert(varchar(12),getdate()) 运行结果如下 ------------------------------------------ 199Jan152000
----日期函数---- DAY()--函数返回date_expression中的日期值 MONTH()--函数返回date_expression中的月份值 YEAR()--函数返回date_expression中的年份值 DATEADD(
----系统函数---- APP_NAME()--函数返回当前执行的应用程序的名称 COALESCE()--函数返回众多表达式中第一个非NULL表达式的值 COL_LENGTH(<'table_name'>,<'column_name'>)--函数返回表中指定字段的长度值 COL_NAME(
sql中的保留字
actionaddaggregateall alterafterandas ascavgavg_row_lengthauto_increment betweenbigintbitbinary blobboolbothby cascadecasecharcharacter changecheckchecksumcolumn columnscommentconstraintcreate crosscurrent_datecurrent_timecurrent_timestamp datadatabasedatabasesdate datetimedayday_hourday_minute day_seconddayofmonthdayofweekdayofyear decdecimaldefaultdelayed delay_key_writedeletedescdescribe distinctdistinctrowdoubledrop endelseescapeescaped enclosedenumexplainexists fieldsfilefirstfloat float4float8flushforeign fromforfullfunction globalgrantgrantsgroup havingheaphigh_priorityhour hour_minutehour_secondhostsidentified ignoreinindexinfile innerinsertinsert_idint integerintervalint1int2 int3int4int8into ifisisamjoin keykeyskilllast_insert_id leadingleftlengthlike lineslimitloadlocal locklogslonglongblob longtextlow_prioritymaxmax_rows matchmediumblobmediumtextmediumint middleintmin_rowsminuteminute_second modifymonthmonthnamemyisam naturalnumericnonot nullonoptimizeoption optionallyororderouter outfilepack_keyspartialpassword precisionprimaryprocedureprocess processlistprivilegesreadreal referencesreloadregexprename replacerestrictreturnsrevoke rlikerowrowssecond selectsetshowshutdown smallintsonamesql_big_tablessql_big_selects sql_low_priority_updatessql_log_offsql_log_update sql_select_limit sql_small_resultsql_big_resultsql_warningsstraight_join startingstatusstringtable tablestemporaryterminatedtext thentimetime
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学习 SQL 语句 大全