摘要: 逻辑错误:1. 对外联接中非保留表的列值进行where 过滤(抵消了外联接的作用,所有的外部行就会被过滤掉) 2. 在多联接操作中,任何外联接,如果后面紧跟着一个内联或右外联接,都会抵消掉外联接的外部行。(前提是:左边外联接的null值 与右联接又进行了on 的比较)解决方案:1在第二个联接中也用左联接 2 注意设计联接的顺序, 先进行inner 内联接,再设计进行外联接3. 在联接查询中 on后的and 条件是为了决定是否匹配,而不是最终的条件 与 where后 的条件不同书中需要准备的数据: 阅读全文
posted @ 2011-05-17 14:21 cnby 阅读(481) 评论(1) 推荐(1) 编辑
摘要: Access允许九种数据类型:文本、备注、数值、日期/时间、货币、自动编号、是/否、OLE对象、超级链接、查询向导文本:这种类型允许最大255个字符或数字,Access默认的大小是50个字符,而且系统只保存输入到字段中的字符,而不保存文本字段中未用位置上的空字符。可以设置“字段大小”属性控制可输入的最大字符长度。备注:这种类型用来保存长度较长的文本及数字,它允许字段能够存储长达64000个字符的内容。但Access不能对备注字段进行排序或索引,却可以对文本字段进行排序和索引。在备注字段中虽然可以搜索文本,但却不如在有索引的文本字段中搜索得快。数字:这种字段类型可以用来存储进行算术计算的数字数据 阅读全文
posted @ 2011-05-10 16:46 cnby 阅读(1825) 评论(0) 推荐(0) 编辑
摘要: 一、序言二、通用源代码格式规则2.1 缩格2.2 页边空格2.3 Begin...End 配对三、Object Pascal3.1 括号3.2 保留字和关键字3.3 过程和函数(例程) 3.3.1 命名/格式化 3.3.2 形式参数 3.3.2.1 格式化 3.3.2.2 命名 3.3.2.3 参数的排序 3.3.2.4 常量参数 3.3.2.5 名称的冲突3.4 变量 3.4.1 变量的命名和格式 3.4.2 局部变量 3.4.3 全局变量的使用3.5 类型 3.5.1 大写约定 3.5.1.1 浮点指针类型 3.5.1.2 枚举类型 3.5.1.3 变数和ole变数类型 3.5.2 结构类 阅读全文
posted @ 2011-05-07 13:02 cnby 阅读(533) 评论(0) 推荐(0) 编辑
摘要: 使用 APPLY 运算符可以为实现查询操作的外部表表达式返回的每个行调用表值函数。表值函数作为右输入,外部表表达式作为左输入。通过对右输入求值来获得左输入每一行的计算结果,生成的行被组合起来作为最终输出。APPLY 运算符生成的列的列表是左输入中的列集跟右输入返回的列的列表的组合。类似表间的联接查询APPLY 有两种形式: CROSS APPLY 和 OUTER APPLY。CROSS APPLY 仅返回外部表中通过表值函数生成结果集的行(相当于left join)。OUTER APPLY 既返回生成结果集的行,也返回不生成结果集的行,其中表值函数生成的列中的值为 NULL(相当于full j 阅读全文
posted @ 2011-05-06 13:23 cnby 阅读(625) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/wenjl520/archive/2008/12/03/1346401.html 阅读全文
posted @ 2011-04-17 19:16 cnby 阅读(266) 评论(0) 推荐(0) 编辑
摘要: grouping()函数:grouping(字段)=1则对字段进行了合计,grouping(字段)=0则此行没有对字段合计,根据这个特性我们可以控件要显示的统计列表,例子如下:View Code DROPTABLE[product]CREATETABLE[product]([proid][varchar](5)NULL,[in_date][varchar](10)NULL,[qty][int]NULL)INSERT[product]([proid],[in_date],[qty])VALUES('1','2004-1-2',10)INSERT[product]( 阅读全文
posted @ 2011-04-17 13:28 cnby 阅读(912) 评论(0) 推荐(1) 编辑
摘要: 例一:数据准备:View Code createtable#t(项目名称varchar(10),项目年度varchar(10),地市varchar(10),申请单位varchar(10),支持金额int)insert#tselect'名称1','2004','省直','1公司',400unionallselect'名称2','2004','省直','2公司',300unionallselect'名称3','2004','石家庄& 阅读全文
posted @ 2011-04-17 03:20 cnby 阅读(671) 评论(0) 推荐(0) 编辑
摘要: sql2005新特性,专为统计而用,直接给个实例吧。准备数据如下:View Code createtablestore(idintidentity(1,1),productidint,storeidchar(1),numint)insertstore(productid,storeid,num)select1,'A',6unionallselect1,'B',7unionallselect2,'A',8unionallselect2,'B',9cube,rollup与group up结合使用,两者的区别简单的就是:CUBE 生成的 阅读全文
posted @ 2011-04-17 01:55 cnby 阅读(578) 评论(0) 推荐(1) 编辑
摘要: 准备案例数据:--SQLcode--建表createtable#Temp(datedatetime,Dcountint)insertinto#Tempselect'2010-01-01',10unionallselect'2010-01-25',10unionallselect'2010-01-31',15unionallselect'2010-02-25',30unionallselect'2010-02-28',20unionallselect'2011-01-03',20unionallsel 阅读全文
posted @ 2011-04-15 15:05 cnby 阅读(777) 评论(0) 推荐(0) 编辑
摘要: --1。得到当前月的天数select datepart(dd,dateadd(dd,-1, --2011-04-30 00:00:00.000dateadd(mm,1,cast(cast(year(getdate()) as varchar)+'-' --2011-04-01 00:00:00.000 +cast(month(getdate()) as varchar)+'-01' as datetime) --2011-05-01 00:00:00.000)))--2.应用case划分 等级 select productid,productName,unitP 阅读全文
posted @ 2011-04-15 04:59 cnby 阅读(603) 评论(0) 推荐(0) 编辑