首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何显示ORM组装的查询?

如何显示ORM组装的查询?
EN

Stack Overflow用户
提问于 2014-05-23 15:13:38
回答 1查看 2K关注 0票数 1

如何显示ORM组装的查询?

示例:选择article.id作为article:id,选择article.name作为article:name

我使用的代码如下:

代码语言:javascript
复制
$query=DB::select('categories.*', 
                    array(DB::expr('COUNT(categories.id)'), 'total'),
                    array(DB::expr('MIN(displays.price)'), 'min_price'),
                    array(DB::expr('MAX(displays.price)'), 'max_price'),
                    array(DB::expr('SUM(displays.is_offer)'), 'is_offer')
            )
            ->from('categories')
                ->join('category_products', 'INNER')
                ->on('categories.id', '=', 'category_products.category_id')
                ->join('displays', 'INNER')
                ->on('category_products.product_id', '=', 'displays.product_id')
            ->where('displays.active', '>=', 1)
            ->group_by('categories.id')
            ->order_by('parent')
            ->order_by('total', 'desc');
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-23 15:22:54

让我们看看,您使用的是DB::select(),它返回一个Database_Query_Builder_Select实例。在医生里写着

用于SELECT语句的数据库查询生成器。有关用法和示例,请参见查询生成器

如果你看到了,你就会看到

代码语言:javascript
复制
echo Debug::vars((string) $query);
// Should display:
// SELECT `username`, `password` FROM `users` WHERE `username` = 'john'

一旦您从__toString()中看到Database_Query_Builder_Select,这就有意义了。

所以

代码语言:javascript
复制
echo (string) $query;

应该会给你查询。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23832826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档