【发布时间】:2023-04-11 01:43:01
【问题描述】:
我怎么能像这样的 sql 搜索
select user.user_id,count(distinct user.user_id,user_lesson_read.lesson_id) as counter
FROM
user
inner join
user_lesson_read
ON (user.user_id =user_lesson_read.user_id)
GROUP BY user_lesson_read.user_id
having counter >=3
在 AR 中? 这是数据库结构:
User
--------------------
user_id |
1 |
--------------------
LessonRead
-------------------------------------
user_id | lesson_id | section_id
-------------------------------------
1 | 2 | A
-------------------------------------
1 | 2 | B
-------------------------------------
1 | 3 | A
-------------------------------------
1 | 4 | A
-------------------------------------
用户 1 有 3 节课记录(第 2、3、4 课)
我尝试了一些类似的东西
'userLessonRead'=>array(
'select'=>'count(distinct t.user_id,t.lesson_id) as b',
//'condition'=>'',
),
我会得到一个 CDbException,并且 sql 不正确:
t.lesson_id) as b, // one parenthesis here
有人帮忙吗?谢谢!
【问题讨论】:
标签: php activerecord yii