XQuery转换到日期不会返回行

约翰·史密斯

我在Oracle XDB中有一张名为test的表,其中有一行。

SQL> select * from test;

SYS_NC_ROWINFO$
---------------------------
<Employee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="">
  <location>
    <joiningDate id="onsite">
      <hireDate>2012-06-18</hireDate>
    </joiningDate>
    <joiningDate id="offshore">
      <hireDate>2011-07-8</hireDate>
    </joiningDate>
  </location>
</Employee>

播放时间:00:00:00.00

我也有类似的索引

CREATE INDEX test_xml_index ON test (OBJECT_VALUE)
  INDEXTYPE IS XDB.XMLIndex PARAMETERS ('PATH TABLE test_dates_tab');

BEGIN
  DBMS_XMLINDEX.registerParameter(
    'myprop',
    'ADD_GROUP GROUP test_dates
       XMLTable test_dates_tab ''/Employee''
       XMLNAMESPACES (''http://www.w3.org/2001/XMLSchema-instance'' AS "xsi")                    
         COLUMNS onsite      date  PATH ''.//*[@id="onsite"]/hireDate/text()''               
       ');
END;
/

为什么我的查询未返回空值?

SQL> select x.*
  2          from test t,
  3             xmltable(
  4               xmlnamespaces(
  5                 'http://www.w3.org/2001/XMLSchema-instance' as "xsi"
  6               ),
  7               'for $d in /Employee/location
  8                         where $d/joiningDate[@id="onsite"]/hireDate/text() = xs:date("2012-06-18")
  9                  return $d'
 10               passing t.object_value
 11                 columns
 12                 hiredate  date path 'hireDate'
 13             ) as x
 14
SQL> /

HIREDATE
--------------------

在您的帮助下得到了Jens

select x.*
        from test t,
           xmltable(
             xmlnamespaces(
               'http://www.w3.org/2001/XMLSchema-instance' as "xsi"
             ),
             'for $d in /Employee/location
                       where $d/joiningDate[@id="onsite"]/hireDate/text() = xs:date("2012-06-18")
                return $d'
             passing t.object_value
               columns
               hiredate  date path 'joiningDate[@id="onsite"]/hireDate'
           ) as x
詹斯原为

XQuery中有一个输入错误:元素被命名<hireDate/>,但是您的轴步长为hiredate

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Javascript 日期转换不会失败

快速转换日期而不会丢失

将人类可读的日期转换为毫秒,然后再次返回而不会丢失信息

将日期转换为数字并返回日期

转换日期格式返回错误的日期 xcode

XQuery返回字符串而不是格式化日期

R-按日期对行中的DF排序(转换,排序)并转换回DF而不会丢失更改

XQuery转换

Laravel 从时间戳转换到日期时显示错误的日期:Y/n/j

当转换成时间戳日期转换返回错误的日期

Swift DateFormatter 不会根据预设的日期格式转换日期

Tryparse不会将日期时间转换为仅日期

查询以返回日期行之间的日期范围

API 返回的值未转换为日期

在 R 中转换日期返回 NA

格林尼治标准时间转换到IST无法解析的日期例外

如何转换到熊猫日期时间到大熊猫中的整数?

从框架转换到核心

SQL日期转换为浮点数,然后返回日期

使用momentjs将日期转换为纪元然后返回日期

Codeigniter查询不会返回我选择的行

仅使用FFTW转换到频域并返回,结果与信号源完全不同

CSS:当 HTML 表格行突出显示时,<a> 标签不会切换到悬停状态

python不会将日期字符串转换为datetime

plainToClass 不会将日期转换为字符串

插入的默认日期在连续转换中不会改变

phpmyadmin DateFormat的默认转换不会更改日期格式

右键加入CTE_dates不会返回所有日期

如何传递从服务器返回的数据,然后使用返回的数据转换到另一个路由?