易截截图软件、单文件、免安装、纯绿色、仅160KB

Flat hierarchyid in SQL Server 2008

在SQL Server 2008中引入了hierarchyid来处理树状结构。下面简单就以AdventureWorks(无hierarchyid)和AdventureWorks2008(有hierarchyid)里的HumanResources.Employee为例,来说明一下在新的hierarchyid中如何进行flat化的dimension抽取。
AdventureWorks是微软为SQL Server提供的数据库虚拟案例。
AdventureWorks中所要的结果集代码如下:
select L4.NationalIDNumber, L4.Title, L3.NationalIDNumber, L3.Title, L2.NationalIDNumber, L2.Title, L1.NationalIDNumber, L1.Title, L0.NationalIDNumber, L0.Title
from HumanResources.Employee L4, HumanResources.Employee L3, HumanResources.Employee L2, HumanResources.Employee L1, HumanResources.Employee L0
where L4.ManagerID = L3.EmployeeID and L3.ManagerID = L2.EmployeeID and L2.ManagerID = L1.EmployeeID and L1.ManagerID = L0.EmployeeID
AdventureWorks2008中的代码如下:
select L4.NationalIDNumber, L4.JobTitle, L3.NationalIDNumber, L3.JobTitle, L2.NationalIDNumber, L2.JobTitle, L1.NationalIDNumber, L1.JobTitle, L0.NationalIDNumber, L0.JobTitle
from HumanResources.Employee L0, HumanResources.Employee L1, HumanResources.Employee L2, HumanResources.Employee L3, HumanResources.Employee L4
where L4.OrganizationNode.GetAncestor(1)=L3.OrganizationNode and L3.OrganizationNode.GetAncestor(1)=L2.OrganizationNode and L2.OrganizationNode.GetAncestor(1)=L1.OrganizationNode and L1.OrganizationNode.GetAncestor(1)=L0.OrganizationNode
GetAncestor()是HierarchyNode类里其中的一个方法。更多hierarchyid数据类型方法引用可参考以下链接:
http://technet.microsoft.com/zh-cn/library/bb677193.aspx


相关文档:

[MySQL优化] 如何了解SQL的执行频率


[MySQL优化] -- 如何了解SQL的执行频率
时间:2010-2-28来源:HaCMS开源社区 作者:chuxu
MySQL 客户端连接成功后,通过 show [session|global]status 命令 可以提供服务器状态信息,也可以在操作系统上使用 mysqladmin extended-status 命令获得这些消息。 show [session|global] status 可以根据需要加上参数&ldquo ......

SQl Create Table has error=>is not valid...

今天下了个WIN7的英文包把系统换成英文的。感觉还行,可是当创建数据库表时发现出错了,查了下才知道是SQL的排序出问题了
下面是CTRL+c V搞过来的,只是方便大家有这样的问题可以得到解决
使用SQL2005进行创建数据库的时候,如果遇到创建失败的情况,如下:
Create 对于 数据库“xxxx”失败。 (Microsoft.SqlS ......

sql数据库命令大全

SQLServer和Oracle的常用函数对比
  1.绝对值
  S:select abs(-1) value
  O:select abs(-1) value from dual
  2.取整(大)
  S:select ceiling(-1.001) value
  O:select ceil(-1.001) value from dual
  3.取整(小)
  S:select floor(-1.001) value
  O:select floor(-1.001) value fr ......

通过pl/sql 将oracle10数据导入oracle9中


1、  打开pl/sql 中tools-preferences,设置Connection中的Oracle Home为oracle9,OCI library为oracle9 如图
2、
         将oralce10目录下的tnsnames.ora文件里面的所要导出的oralce10的服务配置 复制到oracle9目录下的tnsnames.ora文件里面
ORCL =
  (DESCRIP ......

Oracle Sql 性能优化

1)不知大家是否喜欢使用‘NOT IN’这样的操作,如果是,那尽量使用(NOT) EXISTS 替代
2)在海量查询时尽量少用格式转换。
3)查询海量数据是,可以使用optimizer['ɔptimaizə] hints,例如/*+ORDERED */
尽量少用IN操作符,基本上所有的IN操作符都可以用EXISTS代替。
不用NOT IN操作符,可以 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号