如何让 YQL 仅返回新内容(基于给定日期)

发布于 2024-10-20 13:17:56 字数 46 浏览 2 评论 0原文

需要知道如何让 YQL 仅返回比我指定的日期更新的数据。

谢谢

Need to know how to get YQL to return only data that's newer than a date that I specify.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

︶葆Ⅱㄣ 2024-10-27 13:17:56

这取决于您正在查询的数据表及其背后的 Web 服务。

例如,Facebook 图表允许您设置 since 查询参数,并且您可以在数据表上映射一个 key

http://graph.facebook.com/search?q=watermelon&since=yesterday

如果没有,请过滤结果中的 date 元素。

SELECT * from foo.table WHERE date > "2011-03-11T14:00"

<results>
    <post>
        <title>My title</title>
        <link>my link</link>
        <author>fooman</author>
        <date>2011-03-11T14:09</date>
        <content>lorem ipsum</content>
    </post>
    <post>
        <title>My title</title>
        <link>my link</link>
        <author>fooman</author>
        <date>2011-03-11T15:09</date>
        <content>lorem ipsum</content>
    </post>
</results>

这应该可行,前提是您的日期格式设置使字母顺序与时间顺序等效。

如果您的查询类似于

select title,source,description,date from rss where url in ('somerssfeed.com';, 'somerssfeed.com';) | unique(field="title") | sort(field="date", descending="true")

将过滤器放在管道之前:

select title,source,description,date from rss where url in ('somerssfeed.com';, 'somerssfeed.com';) and date > "2010-01-01T00:00" | unique(... [snip!]

It depends on the Data Table you are querying and the web service that's behind it.

For example, facebook graph allows you to set a since query parameter, and you can map a key on it on your Data Table.

http://graph.facebook.com/search?q=watermelon&since=yesterday

If not, filter on the date element in you results

SELECT * from foo.table WHERE date > "2011-03-11T14:00"

<results>
    <post>
        <title>My title</title>
        <link>my link</link>
        <author>fooman</author>
        <date>2011-03-11T14:09</date>
        <content>lorem ipsum</content>
    </post>
    <post>
        <title>My title</title>
        <link>my link</link>
        <author>fooman</author>
        <date>2011-03-11T15:09</date>
        <content>lorem ipsum</content>
    </post>
</results>

This should work, provided that your dates are formatted in a way that makes alphabetical ordering equivalent to temporal order.

If your query is something like

select title,source,description,date from rss where url in ('somerssfeed.com';, 'somerssfeed.com';) | unique(field="title") | sort(field="date", descending="true")

put the filter before the pipes:

select title,source,description,date from rss where url in ('somerssfeed.com';, 'somerssfeed.com';) and date > "2010-01-01T00:00" | unique(... [snip!]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文