网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

标准sql语句总结

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

【网学网提醒】:本文主要为网学会员提供标准sql语句总结,希望对需要标准sql语句总结网友有所帮助,学习一下!


    标准SQL语句总结
    标准SQL语句总结,标准SQL语言基本上适用于下面所列出的数据库软件
    -----------------------------------------------------------------------------
    数据库软件清单
    A商业数据库软件如下
    1.微软的MSSQLServer和Access
    2.IBM的DB2,informax
    3.Sybase的大型数据库ASE,中小型数据库ASA
    4.甲骨文公司的Oracle8.0,oracle9i系列
    5.Borland公司的InterBase
    B多种开源免费数据库
    Mysql,PostgreSQL,SQLite、SimpleSQL、BerkelyDB、Minosse、Firebird
    (Mysql,PostgreSQL是目前使用最广泛)
    -----------------------------------------------------------------------------
    最精简短小的SQL语句
    SQL分类:
    DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
    DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
    DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
    1、说明:创建数据库CREATEDATABASEdatabase-name
    2、说明:删除数据库dropdatabasedbname
    3、说明:
    备份sqlserver
    USEmaster
    EXECsp_addumpdevice'disk','testBack','c:\mssql7backup\MyNwind_1.dat'
    开始备份
    BACKUPDATABASEpubsTOtestBack
    4、说明:创建新表
    createtabletabname(col1type1[notnull][primarykey],col2type2[notnull],..)
    根据已有的表创建新表:
    A:createtabletab_newliketab_old(使用旧表创建新表)
    B:createtabletab_newasselectcol1,col2…fromtab_olddefinitiononly
    5、说明:删除新表droptabletabname
    6、说明:增加一个列Altertabletabnameaddcolumncoltype
    7、说明
    添加主键:Altertabletabnameaddprimarykey(col)
    删除主键:Altertabletabnamedropprimarykey(col)
    8、
    创建索引:create[unique]indexidxnameontabname(col….)
    删除索引:dropindexidxname
    9、说明:
    创建视图:createviewviewnameasselectstatement
    删除视图:dropviewviewname
    10、说明:几个简单的基本的sql语句
    选择:select*fromtable1where范围
    插入:insertintotable1(field1,field2)values(value1,value2)
    删除:deletefromtable1where范围
    更新:updatetable1setfield1=value1where范围
    查找:select*fromtable1wherefield1like’%value1%’---like的语法很精妙,查资料!
    排序:select*fromtable1orderbyfield1,field2[desc]
    总数:selectcountastotalcountfromtable1
    求和:selectsum(field1)assumvaluefromtable1
    平均:selectavg(field1)asavgvaluefromtable1
    最大:selectmax(field1)asmaxvaluefromtable1
    最小:selectmin(field1)asminvaluefromtable1
    -----------------------------------------------------------------------------
    --数据常用操作
    SELECT--从数据库表中检索数据
    INSERT--向数据库表添加新数据
    UPDATE--更新数据库表中的数据
    DELETE--从数据库表中删除数据
    -----------------------------------------------------------------------------
    --数据库对象操作语句
    CREATETABLE--创建一个数据库表
    ALTERTABLE--修改数据库表结构
    DROPTABLE--从数据库中删除表
    CREATEVIEW--创建一个视图
    ALTERVIEW--修改一个视图
    DROPVIEW--删除一个视图
    CREATEINDEX--为表创建一个索引
    DROPINDEX--从表中删除索引
    CREATEPROCEDURE--创建一个存储过程
    DROPPROCEDURE--删除存储过程
    CREATETRIGGER--创建一个触发器
    DROPTRIGGER--从删除触发器
    -----------------------------------------------------------------------------
    --数据权限控制
    GRANT--授予用户访问权限
    DENY--拒绝用户访问
    REVOKE--解除用户访问权限
    -----------------------------------------------------------------------------
    --事务控制
    COMMIT--结束当前事务
    ROLLBACK--中止当前事务
    SETTRANSACTION--定义当前事务数据访问特征
    -----------------------------------------------------------------------------
    --数据库函数,过程,触发器脚本的SQL
    DECLARE--为查询设定游标
    EXPLAN--为查询描述数据访问计划
    OPEN--检索查询结果打开一个游标
    FETCH--检索一行查询结果
    CLOSE--关闭游标
    PREPARE--为动态执行准备SQL语句
    EXECUTE--动态地执行SQL语句
    DESCRIBE--描述准备好的查询
    -----------------------------------------------------------------------------
    SELECT--从数据库表中检索数据
    select*(列名)fromtable_name(表名)wherecolumn_nameoperatorvalue
    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_informationwherestockid=4)
    ---------子查询
    ---------除非能确保内层select只返回一个行的值,
    ---------否则应在外层where子句中用一个in限定符
    selectdistinctcolumn_nameformtable_name----distinct指定检索独有的列值,不重复
    selectstocknumber,"stocknumber+10"=stocknumber+10fromtable_name
    selectstockname,"stocknumber"=count(*)fromtable_namegroupbystockname
    ---------groupby将表按行分组,指定列中有相同的值
    havingcount(*)=2---------having选定指定的组
    select*
    fromtable1,table2
    wheretable1.id*=table2.id----左外部连接,table1中有的而table2中没有得以null表示
    table1.id=*table2.id--------右外部连接
    selectstocknamefromtable1
    union
    [all]-----union合并查询结果集,all-保留重复行
    selectstocknamefromtable2
    -----------------------------------------------------------------------------
    INSERT--向数据库表添加新数据
    insertintotable_name(Stock_name,Stock_number)value("xxx","xxxx")
    value(selectStockname,StocknumberfromStock_table2)---value为select语句
    -----------------------------------------------------------------------------
    UPDATE--更新数据库表中的数据
    updatetable_nameset
    Stockname="xxx"[whereStockid=3]
    Stockname=default
    Stockname=null
    Stocknumber=Stockname+4
    where***
    -----------------------------------------------------------------------------
    DELETE--从数据库表中删除数据
    deletefromtable_namewhereStockid=3
    truncatetable_name-----------删除表中所有行,仍保持表的完整性
    droptabletable_name---------------完全删除表
    -----------------------------------------------------------------------------
    标准SQL统计函数
    AVG--求平均值
    COUNT--统计数目
    MAX--求最大值
    MIN--求最小值
    SUM--求和
    AVG代码例子
    usepangu
    selectavg(e_wage)asdept_avgWagefromemployeegroupbydept_id
    MAX代码例子--求工资最高的员工
    usepangu
    selecte_namefromemployeewheree_wage=(selectmax(e_wage)fromemployee)
    -----------------------------------------------------------------------------
    标准SQL字符串函数
    ASCII()--函数返回字符表达式最左端字符的ASCII码值
    CHAR()--函数用于将ASCII码转换为字符--如果没有输入0~255之间的ASCII码值CHAR函数会返回一个NULL
    LOWER()--函数把字符串全部转换为小写
    UPPER()--函数把字符串全部转换为大写
    STR()--函数把数值型数据转换为字符型数据
    LTRIM()--函数把字符串头部的空格去掉
    RTRIM()--函数把字符串尾部的空格去掉
    LEFT(),RIGHT(),SUBSTRING()--函数返回部分字符串
    CHARINDEX(),PATINDEX()--函数返回字符串中某个指定的子串出现的开始位置
    REPLICATE()--函数返回一个重复character_expression指定次数的字符串
    selectreplicate('abc',3)replicate('abc',-2)运行结果如下abcabcabcNULL
    REVERSE()--函数将指定的字符串的字符排列顺序颠倒
    REPLACE()--函数返回被替换了指定子串的字符串
    selectreplace('abc123g','123','def')运行结果如下abcdefg
    SPACE()--函数返回一个有指定长度的空白字符串
    STUFF()--函数用另一子串替换字符串指定位置长度的子串
    -----------------------------------------------------------------------------
    标准SQL语法
    局部变量和局变量
    ---局部变量(以@开头)
    格式:declare@变量名类型
    --set@id='10010001'
    select@id='10010001'
    ---全局变量(必须以@@开头)
    格式:declare@@变量名类型
    代码:select@@id='10010001'
    --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*1.08
    whenjob_level=’2’thene_wage*1.07
    whenjob_level=’3’thene_wage*1.06
    elsee_wage*1.05
    end
    --WHILE
    declare@xint@yint@cint
    select@x=1@y=1
    while@x<3
    begin
    print@x--打印变量x的值
    while@y<3
    begin
    select@c=100*@x+@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
    
设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师