物化路径和SQL查询交代
问题描述:
我读这篇文章关于拯救树木成数据库
http://www.dba-oracle.com/t_sql_patterns_trees.htm 但我不明白,比如这个
物化路径和SQL查询交代
select e1.ename from emp e1, emp e2
where e1.path like e2.path || '%'
and e2.ename = 'JONES'
是什么意思是:e1.path like e2.path || '%'
我不明白在该查询中使用布尔运算符。我知道'%'是在.ttr表达式中的(。*)。它看起来像我:(e1.path == e2.path) or (e1.path == whateverIWant)
。 THX的HLP。
答
%
是SQL表达式中的通配符,因此它意味着e1.path
应该以e2.path
开头。因此
e1.path
是e2.path
一个孩子。
该查询检索员工JONES
的所有下属。
你的请求可以张贴一些链接,其中解释?我知道什么是“例如K%”,什么是通配符。但我不明白的是表达“喜欢的东西||(或?)‘%’ – Krab 2012-07-18 19:11:38
的''||在数据库中常见的连接符(但不是MySQL的)所以,代替'e2.Path ||‘%’ ',做'CONCAT(e2.Path,'%')'。 – RedFilter 2012-07-18 19:16:53