当前位置: 首页 > 知识库问答 >
问题:

在MySQL中选择从带有XML数据的文本字段查询

花烨
2023-03-14
<Attributes>
  <Map>
    <entry key="accessRequired" value="Yes"/>
    <entry key="company" value="0001"/>
    <entry key="companyName" value="ABC Inc"/>
    <entry key="contractorEndDate" value="11/15/2020"/>
    <entry key="contractorStartDate" value="10/10/2019"/>
    <entry key="costCenter" value="1234"/>
    <entry key="costCenterName" value="design &amp; develop"/>
    <entry key="country" value="US"/>
    <entry key="departmentAdminEmail" value="testadmin@abc.com"/>
      <value>
        <Map>
          <entry key="Rule" value="123456hgfjuykuiykui"/>
        </Map>
      </value>
    </entry>
  </Map>
</Attributes>
select display_name, SUBSTRING_INDEX(ExtractValue(attributes,'/attributes/map/departmentAdminEmail'),' ',1) from table1 where display_name like 'John%';

只想列出电子邮件地址字段,你们能帮我查询一下吗。

共有1个答案

松景铄
2023-03-14

Xpath正在查找 元素。要搜索具有属性值的元素,必须使用[@key=“DepartmentAdminEmail”]

要提取属性的值,需要使用/@value

所以应该是

select display_name, ExtractValue(attributes,'/attributes/map/entry[@key="departmentAdminEmail"]/@value') AS email
from table1 
where display_name like 'John%';
 类似资料:
  • 问题内容: 我想从MySQL的某个特定字段最小值的表中选择数据,我已经尝试过了: 请帮忙吗? 问题答案: 这将为您提供在所有记录中具有最低价格的结果。 SQLFiddle演示

  • 问题内容: 基本上有属性表和翻译表-一个属性有很多翻译。 我需要从翻译中为指定属性的每个属性选择id和value,即使该语言没有翻译记录也是如此。我缺少某种连接技术,或者连接(不涉及语言表)在这里不起作用,因为以下操作不会返回具有指定语言的不存在的翻译的属性。 所以我正在使用这样的子查询,这里的问题是用相同的参数在同一个表中创建两个子查询(感觉像性能消耗,除非mysql将那些子查询分组,我怀疑这是

  • 问题内容: 我只是想知道我可以在php中执行哪种mysql命令,它将从某个表中选择所有项目,其中columna不等于x并且columnb不等于x 就像是: 有任何想法吗? 问题答案: 关键是sql查询,您将其设置为字符串: 请注意,有很多方法可以指定NOT。另一个效果很好的是: 这是如何使用它的完整示例: 您可以在上述while循环内做任何您想做的事情。作为元素访问表中的每个字段,这意味着将为您提

  • 我正在尝试从一个select表单中获取一个时间值。我在代码中看不到任何错误,尝试更改所有类名和变量,但值仍然没有被get select。(提交表单后我看不到所选的值) 代码添加如下:

  • 我有如下实体。 我的控制器是: 它将加载产品类型和系列。我可以只加载类型而不加载序列吗 我不想添加fetch=FetchType。懒得串行,因为如果下次我想加载串行,但不想加载类型,那就太可怕了。

  • 问题内容: 嗨,我有一个带有日期字段和一些其他信息的表。我想选择过去一周(从星期日开始的一周)中的所有条目。 表值: 我想选择上周的所有ID,预期输出为5、6、8 (ID 2不在上周,ID 15在本周。) 怎么写和SQL Query相同。 问题答案: