XML & YQL (аналог SQL) - как получить атрибут подузла? - PullRequest
0 голосов
/ 07 июля 2011

Я пытаюсь выбрать определенный набор данных с помощью YQL, но я не совсем понимаю, как добраться до подуровня с помощью моего YQL.Например, если я выполню этот запрос:

select * from music.track.search где keyword = "Asia"

, я получу это:

<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="22" yahoo:created="2011-07-07T16:47:41Z" yahoo:lang="en-US">
    <results>
        <Track discNumber="1" duration="0" explicit="0" flags="0"
            id="61642071" label="Mark Saliba" popularity="3" rating="-1"
            releaseYear="2008" rights="2208" title="Asia"
            trackNumber="3" url="http://new.music.yahoo.com/mark-j-saliba/tracks/asia--61642071">
            <Artist catzillaID="0" flags="2" hotzillaID="0"
                id="205843271" name="Mark J Saliba" rating="-1"
                trackCount="11"
                url="http://new.music.yahoo.com/mark-j-saliba/" website=""/>
            <Album>

и еслиЯ запускаю этот запрос:

выберите идентификатор из music.track.search где ключевое слово = "Азия"

Я получаю это:

<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng"
    yahoo:count="22" yahoo:created="2011-07-07T16:50:13Z" yahoo:lang="en-US"> 
    <results>
        <Track id="61642071"/>...

Но что я хочу сделатьпросто получить идентификаторы артистов, а не идентификаторы треков (в частности, будет достаточно первого результата).Что такое оператор YQL для этого?

1 Ответ

1 голос
/ 08 июля 2011

Для всех идентификаторов артиста:

select Artist.id from music.track.search where keyword="Asia"

Только для первого идентификатора артиста:

select Artist.id from music.track.search where keyword="Asia" limit 1
...