2011-10-19 5 views
1

私は、REST、XMLウェブサービスをクエリを試してYQL Consoleを使用しています。YQLを使用してXMLサービスをクエリするにはどうすればよいですか?

私はと遊ぶのが簡単な公共サービスを見つけました。

http://www.thomas-bayer.com/sqlrest/CUSTOMER/-151612345/

戻り

<CUSTOMER xmlns:xlink="http://www.w3.org/1999/xlink"> 
    <ID>-151612345</ID> 
    <FIRSTNAME>Deepthi</FIRSTNAME> 
    <LASTNAME>Deep</LASTNAME> 
    <STREET>440 - 20th Ave.</STREET> 
    <CITY>Los Angeles</CITY> 
</CUSTOMER> 

私は、クエリを使用している場合

select * 
from xml 
where url='http://www.thomas-bayer.com/sqlrest/CUSTOMER/-151612345/' 

私はこのXMLが返され得ます。ただし、データに単一の要素に限定しようとすると、たとえば:

select * 
from xml 
where url='http://www.thomas-bayer.com/sqlrest/CUSTOMER/-151612345/' 
    and xpath='//LASTNAME' 

結果は返されません。

私は間違っていますか?

Click here to display the YQL console with the query loaded.

答えて

0

あなたが望むような結果をフィルタリングするための正しいキーではなく、それがitemPathで、xpathではありません。

SELECT * 
FROM xml 
WHERE url='http://www.thomas-bayer.com/sqlrest/CUSTOMER/-151612345/' 
    AND itemPath='//LASTNAME' 

Try this query in the YQL console

クエリdesc <tablename>を発行することにより、指定したテーブルのキーを見ることができます。 xmlテーブルの場合

desc xml 

Try this query in the YQL console

itemPathは、XPath式またはE4X点線経路のいずれかであり得ます。

関連する問題