【发布时间】:2015-08-23 23:01:14
【问题描述】:
我在两个表(用户名:字符串组:整数)和关系(源:整数,目标:整数,值:整数)之间有一对多的关系。它们是相关的,因此 userid=relatioship.source。
我正在尝试从中获取一些 json,所以我写了:
def self.including_relationships
User.joins("INNER JOIN relationships ON users.id = relationships.source").select("users.name, users.group, relationships.source, relationships.target, relationships.value").each_with_object(Hash.new{|h, k| h[k] = []}) do |a, obj|
obj['nodes'] << a.slice('name','group')
obj['links'] << a.slice('source', 'target', 'value')
但是我得到了错误
SQLite3::SQLException: near "group": syntax error: SELECT users.name, users.group, relationships.source, relationships.target, relationships.value FROM "users" INNER JOIN relationships ON users.id = relationships.source
当我删除切片中的 users.group 和“组”时,它工作正常。
我检查了我的数据库架构,如下所示:
ActiveRecord::Schema.define(version: 20150603200530) do
create_table "relationships", force: true do |t|
t.integer "source"
t.integer "target"
t.integer "value"
end
create_table "users", force: true do |t|
t.string "name"
t.integer "group"
end
end
所有表格都按应有的方式填充。我无法弄清楚确切的语法错误是什么。
【问题讨论】:
标签: mysql sql ruby-on-rails sqlite