mysql - 将哈希值保存到文本字段中,然后在 where 子句中查询哈希值

标签 mysql ruby ruby-on-rails-4

我想将 ruby​​ 哈希值保存在数据库中,例如 指标表有名称、值字段。

metrics.create("Registered", '{"Gender": "Male", "Age": 21}')

我希望查询应该像这样运行。

select count(*) from metrics where name=“Registered” and values.age > 20

据我所知,这是行不通的。但有可能实现这一目标吗?

最佳答案

如果使用的数据库是postgresql,则可以有一个名为values的json列,然后使用json_extract_path_text(values,age)提取'age'

可以看到json_extract_path_text的引用here

关于mysql - 将哈希值保存到文本字段中,然后在 where 子句中查询哈希值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32965006/

相关文章:

javascript - 如何让一个函数在继续之前等待回调

css - Michael Hartel 的 Ruby on Rails 教程 7.7 中的 CSS 弃用警告

ruby - 有没有办法对波浪字符使用正则表达式匹配?

ruby-on-rails-4 - ActiveAdmin 在提交表单时删除附加的 CarrierWave 图像

mysql 5.7 无法允许 CentOS7 上的 docker IP 访问

mysql - 如何正确执行查询?

ruby-on-rails - 用户在创建时存在,但实际上不在数据库中

ruby-on-rails - Errno::EACCES(权限被拒绝@dir_s_mkdir

datetime - Rails ActiveSupport::TimeWithZone as_json日期格式问题

mysql逐日选择日期