我正在尝试按标签排序
$ result = Model_Tag ::查询() - >选择(\燃油\核心\ DB :: expr的( 'COUNT(*)'), '计数') - >选择( '标记') - > GROUP_BY( '标签' ) - > ORDER_BY( '计数', '降序') - >得到();
$ result = Model_Tag ::查询() - >选择(\燃油\核心\ DB :: expr的( 'COUNT(*)', '计数')) - >选择( '标记') - > GROUP_BY( '标签' ) - > ORDER_BY( '计数', '降序') - >得到();
但是,无论我做什么,我都会得到错误,即未将计数定义为ORM坚持对字段名称进行别名处理:
SELECT count(*)AS
t0_c0
,t0
。tag
ASt0_c1
,t0
。id
ASt0_c2
来自tag
ASt0
GROUP BYt0
。tag
ORDER BYt0
。count
DESC“
导致找不到列错误
或者:
$ query = Model_Tag :: query() - >选择(\ Fuel \ Core \ Db :: expr('count(*)as 计数 ')) - >选择(' 标签 ') - > GROUP_BY(' 标签 ') - > ORDER_BY(' 计数”, '降序') - >得到();
查询
SELECT count(*)as count AS
t0_c0
,t0
。tag
ASt0_c1
,t0
。id
ASt0_c2
FROMtag
ASt0
GROUP BYt0
。tag
ORDER BYt0
。count
DESC
给出语法错误
答案 0 :(得分:0)
在FuelPHP版本1.8中,访问您的控制器并查询设置此示例:
$result = Model_Tag::query()->group_by('tag')->order_by('count','desc')->get();
如果你得到了计数
$count = count($result);
警告!请勿致电select('tag')
,因为您已使用Model_Tag