zwz_good  

2009年6月17日

摘要: 先看如下一个数据表(t_tree): 上图显示了一个表中的数据,这个表有三个字段:id、node_name、parent_id。实际上,这个表中保存了一个树型结构,分三层:省、市、区。其中id表示当前省、市或区的id号、node_name表示名称、parent_id表示节点的父节点的id。 现在有一个需求,要查询出某个省下面的所有市和区(查询结果包含省)。如果只使用SQL语句来实现,需要使用到游标... 阅读全文
posted @ 2009-06-17 14:12 zwz_good 阅读(203) 评论(0) 推荐(0) 编辑
 
摘要: 先看下面一个嵌套的查询语句:select*fromperson.StateProvincewhereCountryRegionCodein(selectCountryRegionCodefromperson.CountryRegionwhereNamelike'C%') 上面的查询语句使用了一个子查询。虽然这条SQL语句并不复杂,但如果嵌套的层次过多,会使SQL语句非常难以阅读和维护。因此,也可以... 阅读全文
posted @ 2009-06-17 14:02 zwz_good 阅读(236) 评论(0) 推荐(0) 编辑
 
摘要: 很简单的一个东西,见网上好多朋友问“怎么实现交叉表?”,以下是我写的一个例子,数据库基于SQL SERVER 2000。    交叉表实例    建表:    在查询分析器里运行:    CREATE TABLE [Test] (    [id] [int] IDENTITY (1, 1) NOT NULL ,    [name] [nvarchar] (50) COLLA... 阅读全文
posted @ 2009-06-17 13:57 zwz_good 阅读(278) 评论(0) 推荐(0) 编辑
 
摘要: 理解SQL语句中 Exists()exists对于主查询而言只有一个作用:返回ture或false,而其本身查询的結果集不具任何意义因此在子查询的Select命令语句的字段行中通常使用通用字符*或者直接使用数字1执行步骤: 实际上是主查询每一次得到一条记录时,都会去判断where后面的条件是否都满足,如果满足了,那么这条记录将会作为结果返回。比如有如下数据表 Tbcol100001 100002 ... 阅读全文
posted @ 2009-06-17 10:07 zwz_good 阅读(534) 评论(0) 推荐(1) 编辑