2011-07-10 49 views
1

我想使用JavaScript從flickr獲取yql的數據,例如 用yql獲取隨機行?

select id from flickr.photos.search(10) where text = 'music' and license=4 

但是,我想取10個隨機行,而不是最新的,因爲最新的往往是來自同一個人的10張照片。

是否可能在yql本身(我懷疑不是), 或任何可能帶來相同效果的變通辦法? (它不必是完整的隨機的,我想避開主要的是要得到相同的海報10張)

回答

0

爲了充分利用獨特owner唯一的結果,你可以使用unique()功能(docs) 。

我的建議是查詢更大的結果集(更可能有10個獨特的人),然後撥打unique(),然後truncate()限制爲10個結果,如下所示。

select id from flickr.photos.search(100) where text = 'music' and 
license=4 | unique(field="owner") | truncate(count=10) 
+0

這是我第一次嘗試,不幸的是它並沒有真正幫助;人們上傳大量的照片,所以我真的需要一個巨大的子集來確保我得到多個所有者的可能性非常高,這會使請求花費很長時間 – JohnSmith

+0

如果不帶回大型數據集(或多個數據集)從Flickr,你將無法獲得「隨機」或「獨特」的結果。關於提出的原始問題,如果底層API提供「隨機」結果,那麼YQL也是如此。否則,祝你好運。相關討論,http://www.flickr.com/groups/api/discuss/72157618101421766/ – salathe