yql?? とりあえず試してみた

試してみた。
※PDFの説明書きにはアクセスできませんでした。
なるほどね。理解した。XML DBってやつの一種だな、これは。そう考えると理解できる。SQLと同等っていうと違う物を想像してしまう人がいると思いますね。基本SELECT文オンリーみたいです。INSERTやらUPDATEやらCREATE TABLEやらは実装されていないっていうか使い道が見あたらないわけで(w


例えば

select * from feed where url='http://d.hatena.ne.jp/tanabeebanat/rss/'

って書くと

<?xml version="1.0" encoding="UTF-8"?>
<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="22" yahoo:created="2008-12-17T12:50:05Z" yahoo:lang="en-US" yahoo:updated="2008-12-17T12:50:05Z" yahoo:uri="http://query.yahooapis.com/v1/yql?q=select+*+from+feed+where+url%3D%27http%3A%2F%2Fd.hatena.ne.jp%2Ftanabeebanat%2Frss%2F%27">
<diagnostics>
<url execution-time="4137">http://d.hatena.ne.jp/tanabeebanat/rss/</url>
<user-time>4198</user-time>
<service-time>4137</service-time>
<build-version>2008.12.03.14:01</build-version>
</diagnostics>
<results>
<item xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" rdf:about="http://d.hatena.ne.jp/tanabeebanat/20081217">
<title>2008-12-17</title>
<link>http://d.hatena.ne.jp/tanabeebanat/20081217</link>
<description> 昨日は休んだけど今日は書くよ〜 </description>
<content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[ <div class="section">
<p>昨日は休んだけど今日は書くよ〜</p>
<p><br></p>
</div>
]]></content:encoded>
<dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tanabeebanat</dc:creator
<dc:date xmlns:dc="http://purl.org/dc/elements/1.1/">2008-12-17</dc:date>
</item>
<item xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" rdf:about="http://d.hatena.ne.jp/tanabeebanat/20081217#1229516780">
<title>[日記]やっちまった</title>
<link>http://d.hatena.ne.jp/tanabeebanat/20081217#1229516780</link>
<description> 昨日の記事へのコメントは今日の記事で書くべきだった。あまりにも長すぎる。またやっちまった。いかんなぁ。 </description>
<content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[ <div class="section">
<a name="seemore"></a>
<p>昨日の記事へのコメントは今日の記事で書くべきだった。あまりにも長すぎる。またやっちまった。いかんなぁ。</p>
<p><br></p>
</div>
]]></content:encoded>
<dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tanabeebanat</dc:creator
<dc:date xmlns:dc="http://purl.org/dc/elements/1.1/">2008-12-17T21:26:20+09:00</dc:date>
<dc:subject xmlns:dc="http://purl.org/dc/elements/1.1/">日記</dc:subject>
</item>
〜以下略

みたいな感じで返ってきます。


試しに条件をつけてみた。あえて日本語も入れてみた。

select * from feed where url='http://d.hatena.ne.jp/tanabeebanat/rss/' and ( ( title like'%日記%' or title like '%ネタ%') and title like '%視聴率%')

結果

<?xml version="1.0" encoding="UTF-8"?>
<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:count="1" yahoo:created="2008-12-17T01:03:45Z" yahoo:lang="en-US" yahoo:updated="2008-12-17T01:03:45Z" yahoo:uri="http://query.yahooapis.com/v1/yql?q=select+*+from+feed+where+url%3D%27http%3A%2F%2Fd.hatena.ne.jp%2Ftanabeebanat%2Frss%2F%27+and+%28+%28+title+like%27%25%E6%97%A5%E8%A8%98%25%27+or+title+like+%27%25%E3%83%8D%E3%82%BF%25%27%29+and+title+like+%27%25%E8%A6%96%E8%81%B4%E7%8E%87%25%27%29">
<diagnostics>
<url execution-time="5">http://d.hatena.ne.jp/tanabeebanat/rss/</url>
<user-time>10</user-time>
<service-time>5</service-time>
<build-version>2008.12.03.14:01</build-version>
</diagnostics>
<results>
<item xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" rdf:about="http://d.hatena.ne.jp/tanabeebanat/20081214#1229233029">
<title>[ネタ][スポーツ・アウトドア]先週の早明戦の視聴率?</title>
<link>http://d.hatena.ne.jp/tanabeebanat/20081214#1229233029</link>
<description> 昨日もいつものメンバーで飲みました。 「先週の早明戦すごかったね〜」って話になったのですが…… 0.8%だったらしい(笑)。 なのにメンバーの中で統計を取ると75%でした。数字ってのはそういうものなのかな?いずれにしろ、あの試合は見たら恐らく感動したと思います。ルー</description>
<content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[ <div class="section">
<p>昨日もいつものメンバーで飲みました。</p>
<p>「先週の早明戦すごかったね〜」って話になったのですが……</p>
<a name="seemore"></a>
<p>0.8%だったらしい(笑)。</p>
<p>なのにメンバーの中で統計を取ると75%でした。数字ってのはそういうものなのかな?いずれにしろ、あの試合は見たら恐らく感動したと思います。ルール知らなくてもあのラストシーンは感動できると思います。ラグビーファンの友だちは自然と脳内でユーミンの「ノーサイド」が再生されたと言ってました。</p>
<p><br></p>
</div>
]]></content:encoded>
<dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">tanabeebanat</dc:creator
<dc:date xmlns:dc="http://purl.org/dc/elements/1.1/">2008-12-14T14:37:09+09:00</dc:date>
<dc:subject xmlns:dc="http://purl.org/dc/elements/1.1/">ネタ</dc:subject>
<dc:subject xmlns:dc="http://purl.org/dc/elements/1.1/">スポーツ・アウトドア</dc:subject>
</item>
</results>
</query>



いろいろやってみたけれど、ORACLE文法そのままでは通らないことがままあった。あと、「かっこ("("とか")")」を重ねる場合は1ブランク開けないと駄目なような気がする。


とにかく、今一つだけ言えることがある。少なくともIE6で見る限り、SQLじゃなかったYQLを入力するところのフォントがでかすぎて使いづらい(笑)。


そういえば昔ORACLEにもSQLが試せる環境が有ったような気がしたのだが……みつからなかった。
無くなったのか見失っただけなのかクローズされた場所に移動したのか不明。