仅检索 RedBean 中的部分字段

发布于 2024-11-17 20:33:50 字数 225 浏览 1 评论 0原文

我正在使用 RedBean ORM 编写一些代码,我想知道是否可以仅加载/检索数据库表中的某些字段。 我知道有一个加载方法,但它给出了整个表作为bean。我只想得到一些字段?

呵呵,当我写它的时候,我开始想知道它是否不反对 RedBean 模式(或 ORM),因为只获取一些值会创建无效的(只有一些值)对象/bean?我想做一些值的延迟加载...也许还有其他一些 ORM(像 RedBean 一样简单:) 来实现这一点?

I'm using RedBean ORM to write some code and I was wondering if i can load/retrive only some fields from db table.
I know there is a load method but it gives whole table as bean. I wish to get only some fields?

Heh, when i wrote it, I started wondering if it's not against RedBean pattern(or ORM), because getting only some values will create invalid(with only some values) object/bean? I wanted to make some lazy loading of values... maybe there is some other ORM(as easy as RedBean:) to achive this?

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

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

发布评论

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

评论(1

回首观望 2024-11-24 20:33:50

仅从记录中加载某些字段是没有意义的:

  • 通过选择较少的字段,您不会减少查询数量
  • 它不会减少需要传输的数据量(这与行数更相关)

此外,RedBeanPHP 已经延迟加载所有关系字段,因此无需执行此手动操作。如果您只对单个单元格感兴趣,请使用:

R::getCell("select title from document where id = 1");

或者只从记录中获取一些字段:

R::getRow("select id,title from document where... ");

这些函数返回记录,而不是 bean,这是处理简单字段和行的最快方法。

希望这个答案有帮助...

It does not make sense to load just some fields from a record:

  • By selecting less fields you won't decrease the number of queries
  • It wont decrease the amount of data that needs to be transferred (this is more related to the number of rows)

Also, RedBeanPHP already lazy-loads all relational fields, so there is no need to do this manual. If you are interested in only a single cell use:

R::getCell("select title from document where id = 1");

Or to just grab some fields from a record:

R::getRow("select id,title from document where... ");

These functions return records, not beans, this is the fastest way to deal with simple fields and rows.

Hopefully this answer helps...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文