我有一个这样的数据库设置:
events
- id
- schedule_type (0 = single, 1 = recurring)
- title
schedule (for single events)
- id
- event_id
- date
schedule_recurring (for recurring events)
- id
- event_id
- date
我的查询是这样的:
DB::table('events')
->left_join('schedule', 'events.id', '=', 'schedule.event_id')
->left_join('schedule_recurring', 'events.id', '=', 'schedule_recurring.event_id')
->order_by('schedule.date', 'asc')
->order_by('schedule_recurring.date', 'asc')
->get();
不显示schedule字段的日期字段,只显示schedule_recurring字段的日期字段。来自数据库的数据中的日期字段设置为NULL。我不知道我的查询哪里出错了
可以创建一个视图作为schedule
和schedule_recurring
的并集吗?一旦你这样做,你只需要连接到视图,大大简化了事情。