注:table指的是操作的表名称 (2)基础查询select (3)去重distinct (4)更新update (5)删除语句 ②truncate ③drop (6)插入语句 ②升级使用:insert into table …select…from… ③跨数据库的插入 ④当提示不允许插入数据时的解决办法 (7)排序 order by 根据score字段进行升序操作 ②降序DESC 根据score字段进行降序操作 (8)分组group by (9)多表查询 结果为1,2,由此可见inner join 就相当于两张表的交集,而交集的项为on后面的条件 ②left outer 结果为1,2,3由此可见left outer join 就相当于以左边表为准也就是主表为准(也就是A表),如果3在B表找不到,那么查询的最后结果以NULL填充 结果为1,2,4由此可见left outer join 就相当于以右边表为准也就是主表为准(也就是B表),如果4在A表找不到,那么查询的最后结果以NULL填充 结果为1,2,3,4由此可见full outer join 就相当于两张表的并集 Transact-SQL 编程 (2)begin…end (3)as (4)局部变量 ②变量的赋值 ③变量声明与定义 (5)全局变量 –配置函数 –系统统计函数 (6)输出 (7)选择语句: if-else判断语句 示例 (7)case语句 示例 (8)while循环、continue、break
基础篇
(1)数据模型的三要素
数据模型的三要素:数据结构、数据操作、数据约束条件
select XX from table ,查询语句一般都要加where条件
select distinct(xx) from table ,将XX重复的行去掉,只显示一行
update table set XX where YY
update语句为跟新数据库内容的语句,所以update语句必须添加条件也就是where条件,不然就是整表跟新
①delete
delete from table where XXX=yyy,delete 常用于删除一行数据,后面需要跟where条件,如果不跟where条件将删除整个表,那么效果将跟truncate一样
truncate table XXX,没有where条件,删除整张表的数据
drop table XX,drop将会删除掉整个表结构,不仅仅是数据
①常规使用insert into table …values
insert into table(A,B,C) values(1,‘set’,3)
insert into TABLE( A1,A2) select B1,B2.from table1,将table1中的B1,B2列的数据插入table 表中的A1与A2列
insert into 目标数据库名字…table(sysname,sysvalue,comment,tagNO,sysflag,Y_id)
select sysname,sysvalue,comment,tagNO,sysflag,Y_id from 数据来源数据库名字…table
允许将显式值插入表的标识列中 ON-允许 OFF-不允许set identity_insert table ON--打开 set identity_insert table OFF--关闭
①升序ASCSELECT id, name, gender, score FROM students WHERE class_id = 1 ORDER BY score ASC
SELECT id, name, gender, score FROM students WHERE class_id = 1 ORDER BY score DESC
SELECT class_id, COUNT(*) num FROM students GROUP BY class_id
存在聚合函数时,列只允许存在分组列,其它的列放进去会报错
表A:数据A_ID(1,2,3)表B:数据B_ID(1,2,4)
①inner joinselect * from A inner join B on A_ID=B_ID
select * from A left outer join B on A_ID=B_ID
③right outerselect * from A right outer join B on A_ID=B_ID
④full outerselect * from A full outer join B on A_ID=B_ID
扩展篇
(1)GO
标志这程序段的开始,在下一个GO出现之前,本GO之下的代码都为一段代码,在里面定义的局部变量可以正常使用,但在下一个GO之后的代码就不能再使用第一个GO里面定义的变量
表示代码块,如if语句下面,就用begin…end ,有点像java中的{}
表示程序即将开始,在库或是表定义之下,程序开始之间
①定义关键字:declare
set @变量名 = 变量值
select @变量名 = 变量值
declare @id char(10)–声明一个长度的变量id
declare @age int –声明一个int类型变量age
select @id = 22 –赋值操作
set @age = 55 –赋值操作
print convert(char(10), @age) + ‘#’ + @id
select @age, @id
select @@identity;–最后一次自增的值
select identity(int, 1, 1) as id into tab from student;–将studeng表的烈属,以/1自增形式创建一个tab
select * from tab;
select @@rowcount;–影响行数
select @@cursor_rows;–返回连接上打开的游标的当前限定行的数目
select @@error;–T-SQL的错误号
select @@procid;
set datefirst 7;–设置每周的第一天,表示周日
select @@datefirst as ‘星期的第一天’, datepart(dw, getDate()) AS ‘今天是星期’;
select @@dbts;–返回当前数据库唯一时间戳
set language ‘Italian’;
select @@langId as ‘Language ID’;–返回语言id
select @@language as ‘Language Name’;–返回当前语言名称
select @@lock_timeout;–返回当前会话的当前锁定超时设置(毫秒)
select @@max_connections;–返回SQL Server 实例允许同时进行的最大用户连接数
select @@MAX_PRECISION AS ‘Max Precision’;–返回decimal 和numeric 数据类型所用的精度级别
select @@SERVERNAME;–SQL Server 的本地服务器的名称
select @@SERVICENAME;–服务名
select @@SPID;–当前会话进程id
select @@textSize;
select @@version;–当前数据库版本信息
select @@CONNECTIONS;–连接数
select @@PACK_RECEIVED;
select @@CPU_BUSY;
select @@PACK_SENT;
select @@TIMETICKS;
select @@IDLE;
select @@TOTAL_ERRORS;
select @@IO_BUSY;
select @@TOTAL_READ;–读取磁盘次数
select @@PACKET_ERRORS;–发生的网络数据包错误数
select @@TOTAL_WRITE;–sqlserver执行的磁盘写入次数
关键字:select、print
print 变量或表达式
select 变量或表达式if <表达式> <命令行或程序块> else if <表达式> <命令行或程序块> else <命令行或程序块>
if 2 > 3 print '2 > 3' else if (3 > 2) print '3 > 2' else print 'other'
case XX when <条件表达式> then <运算式> when <条件表达式> then <运算式> when <条件表达式> then <运算式> else <运算式> end
select *,case sex when 1 then '男' when 0 then '女' else '火星人' end as '性别' from student;
while <表达式> begin <命令行或程序块> [break] [continue] <命令行或程序块> end
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算