我有一个名为'School'的类,其模式如下
table "school" do |t|
t.uuid "school_name"
t.string "city"
t.jsonb "students"
end
字符串
上表的student列是jsonb类型。目前我的table看起来是这样的-
School table
现在,我想以这样的方式执行连接,我有以下形式的记录-
Desired result的
我可以用 snowflake 中的展平功能来实现这个-
第一个月
如何在psql或rails中的Active record中实现此操作
我尝试了不同的交叉连接,但它没有工作。我一直在努力,因为5小时,以获得理想的结果,但我仍然面临这个问题。
1条答案
按热度按时间8qgya5xd1#
为了更好地Map真实世界条件,应更改表设计。一个城市可能有很多学校,一所学校可能有很多学生。因此,适当的关系是:
字符串
那么产生所需结果的查询是:
型
顺便说一句,存储学生的年龄是没有意义的,b/c它会随着时间而变化,如果你想在你的视图中显示,从date_of_birth开始计算它。