1

SQL サーバーに XML 型の列があります。

<LogMessage xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="LogMessageBusinessServiceRequest">
  <Application>Services.Business.myapp</Application>
  <Time>2013-05-30T15:01:38.932Z</Time>
  <Level>Info</Level>
  <Message>MultiQuery Biz Request</Message>
  <MachineName>Machine1</MachineName>
  <ThreadId>16084</ThreadId>
  <Callsite>BLAH</Callsite>
  <CreatedBy>Machine1\svc_biz_myapp</CreatedBy>
  <Context>
    <myappExtraInfo xmlns="http://services.somedomain.com/myapp/logging/extraInfo" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <CallType>MultiProcessQuery</CallType>
      <RequestId>r163505508498822282742</RequestId>
      <FirmId>160</FirmId>
      <PMFirmId>203</PMFirmId>
      <SubscriptionId>0</SubscriptionId>
      <Token />
      <LastClientSvcTimeMs>0</LastClientSvcTimeMs>
      <ResultCode>0</ResultCode>
      <ResultCodeDescription>OK</ResultCodeDescription>
      <ElapsedTimeTotalMs>110</ElapsedTimeTotalMs>
      <ElapsedTimeMtMs>110</ElapsedTimeMtMs>
      <ElapsedTimeDacMs>109</ElapsedTimeDacMs>
      <ElapsedTimePMSSMs>-1</ElapsedTimePMSSMs>
    </myappExtraInfo>
  </Context>

そこからFirmIDを取得したい。しかし、select ステートメントの次のセクションではできません。

select
[Body].value('(/LogMessage/Context/myappExtraInfo/FirmId)[1]', 'varchar(max)') FirmID

私は何を間違っていますか?

御時間ありがとうございます。

  • シヤム
4

1 に答える 1