随笔分类 - SQL Server 数据库
摘要:sql:insert openrowset( 'SQLOLEDB ', '101.110.0.104'; 'sa'; '1234',ccport.dbo.SYSTEM_CODELIST) select * from openrowset( 'SQLOLEDB ', '101.110.0.101'; 'sa'; '1234',CRMBusiness.dbo.SYSTEM_CODELIST) 注意:表结构必须相同
阅读全文
摘要:函数格式:right(需要提取的字符窜,提取字符个数):从右往左数实例:right('12345',2)得到:45left(需要提取的字符窜,提取字符个数)实例:left('12345',2)得到12substring(需要提取的字符窜,开始位置,提取字符个数)实例:substring('12345',1,2)得到12还有种写法:我试了下没成功substring('12345',-2,2)报错了!要是谁知道的话,告诉我一下!谢谢!
阅读全文
摘要:datepart缩写年yy, yyyy季度qq, q月mm, m年中的日dy, y日dd, d周wk, ww星期dw, w小时hh分钟mi, n秒ss, s毫秒ms微妙mcs纳秒ns函数格式:datepart(datepart,date)例如datepart(hh,2008-04-25 17:31:02)得到:17返回的值是int类型的比如:datepart(ss,2008-04-25 17:31:02)得到:2
阅读全文
摘要:存储过程的理论性的东西我就不多说了!我就直接写它的简单应用把!一:无参数存储过程:1. 语法规则create procedure 存储过程的名称as--如果不需要在应用程序中使用返回的行数,就添加上“set nocount on”set nocount on要执行的sql语句(这边可以写多条sql语句的)go1.1实例:创建一个叫pro_updt_1的存储过程if exists(select * from sysobjects where name='pro_updt_1') drop proc pro_updt_1go--上面的意思是当名叫pro_updt_1的存储过程存在的
阅读全文
摘要:数据类型转换select cast('2012-03-17' as datetime) /*结果:2012-03-17 00:00:00.000*/可以这样应用(“日期间隔查询”可以使用到):select CONVERT(varchar(10),cast('2012--03-17' as datetime), 20) /*结果:2012-03-17*/时间日期格式,时间日期转换参数(网上抄录):select CONVERT(varchar, getdate(), 120 ) /*结果:2010-05-06 17:16:28*/select CONVERT(var
阅读全文
摘要:Exists,NOT EXISTS:1.含义:带有exists谓词的子查询不返回任何实际数据,它只产生逻辑真值true或逻辑假值false。2.查询所有选修了c1号课程的学生姓名: select sn from s where exists (select * from sc where sno=s.sno and cno='c1')注:若内查询结果(select * from sc where sno=s.sno and cno='c1')为空,则外层的where子句返回真值,否则返回假值!查询过程:步骤一:从外层查询中的s表的第一个元组,根据它,与内层查询相
阅读全文
摘要:前言1.将一个查询块嵌套在另一个查询块的where子句或having短语的条件中的查询称为嵌套查询2.上层的查询块叫外层查询或父查询或主查询,下层查询块又称为内层查询或子查询,sql语句允许多层嵌套查询!3.子查询的select语句不能使用order by子句,order by子句永远只能对最终(或外)查询结果排序4.嵌套查询的求解方法是由里向外处理带有in谓词的子查询1.查询与“王林”同一个系学习的学生的所有信息一般的查询方法: 步骤一:确定“王林”所在系名 select dept from dbo.s where sn='王林' 步骤二:查找所有计算机系的学生select
阅读全文
摘要:1.查询所有学生信息,性别为男的同学,显示为“男同学”,性别为女的,显示为“女同学”select *,case sex when '男' then '男同学' when '女' then '女同学' else '其他'end as a from dbo.s数据库表s,c,sc截图请到:http://www.cnblogs.com/fuge/archive/2012/03/16/2400913.html
阅读全文
摘要:1.自然连接连接s和sc表select s.sno,sn,sex,age,dept,cno,score from s ,sc where s.sno=sc.sno2.外连接左连接 left join on 连接s和sc表select s.sno,sn,sex,age,dept,cno,score from s left join sc on s.sno=sc.snos表为主体,即使s6没有选课,信息也会出现在查询结果中3.合并查询 union从sc数据表中查询出学号为s1的同学的学号和总分,再从sc数据表中查询出学号为s2的同学的学好和学分,然后将两个查询结果合并成一个结果表。select s
阅读全文
摘要:1.查询排序:order by asc(升序)或desc(降序),默认asc(升序)查询选修了 3号课程的学生的学号及其成绩,查询结果按分数的降序排列。select sno,score from sc where cno='c3' order by score desc查询全体学生情况,查询结果按所在系升序排列。select * from s order by dept asc查询全体学生情况,对同一系中的学生按年龄降序排序。select * from s order by 4 desc --"4"表示"select *"查询列中的第四列
阅读全文
摘要:1. count() 查询学生总人数。select count(*) from scount(*)表示对元组或记录计数。2.sum()返回组中所有值的和。sum只能用于数字列,空值会被忽略!3.avg()返回组中值的平均值,空值回避忽略!4.max()返回组中值的最大值5.min()返回组中值的最小值6.计算c1课程的学生人数、最高成绩、最低成绩及平均成绩select count(*),max(score),min(score),avg(score) from sc where cno='c1'数据库表s,c,sc截图请到:http://www.cnblogs.com/fuge
阅读全文
摘要:某些查询条件确定范围between and,not between and确定集合in,not in字符匹配like,not like空值is null,is not null多重条件and,or,not1。确定范围 查询年龄在(不在)21到24之间的学生姓名,年龄。 select sn,age from s where age between 21 and 24 (select sn,age from s where age not between 21 and 24)2.确定集合 查询是(不是)信息系、自动化系和计算机系的学生的姓名 select sn from s where dept
阅读全文
摘要:查询所有选修过课的学生的学号select sno from sc查询结果里有许多重复行,去重复的方式:select distinct sno from sc
阅读全文
摘要:数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 在使用left jion时,on和where条件的区别如下:1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。 假设有两张表:表1:tab2 id size 1 10 2 20 3 30 表2:tab2 size name 10 AAA 20 BBB 20 CCC 两条SQL:1、select * f
阅读全文

浙公网安备 33010602011771号