mysql - 如何使用 codeigniter 从 json 列中检索数据?

标签 mysql json codeigniter

我是 codeigniter 的初学者。我正在尝试从我的 sql 数据库的 json 列中检索数据 db结构是这样的

DB NAME : order
——————————————————------------------------------------------
 Id    | description
——————————————————————————————————---------------------------
1      |  {“pc”: [{ “brand”: “name”}], “mouse”: [“LL”, “DC”]}
————————————————————————————————————--------------------------

例如,我想检索所有具有 mouse = dc 的实例

$data = $this->db->select($select)->from(‘order’)
            ->where(“mouse”, “DC”) ->get()->result();   

最佳答案

好吧,我以前从来没有像这样工作过,但是在用户的帮助下ascsoftw答案,我找到了this section on the MySQL documentation这可能会有所帮助,I think this is even better for you case .

然后,您的查询可能看起来像这样(很抱歉,如果我弄错了,就像我说的,以前从来没有这样工作过):

SELECT Id FROM order where description->>"$[1][1]";

据我所知,这将检索鼠标的所有 ID(数组索引 1)以及 DC 的描述(数组索引 1)。

如果没有帮助,您可以继续阅读 MySQL 的文档。

顺便说一句,值得一提的是,您可以通过多种方式在 CodeIgniter 中进行查询,如果 CI 查询构建器不适应您想要执行的操作,您始终可以按照以下示例进行操作:

    $query = "SELECT * FROM table_name";

    $result = $this->db->query($query);

    if($result->num_rows() != 0)
    {
       foreach($result->result() as $row)
      {
        return something
      }
    } 
    else
    {
       return false
    }

如果这对您有帮助,请告诉我,这样我就可以为遇到相同问题的任何人编辑正确的答案。

关于mysql - 如何使用 codeigniter 从 json 列中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58065205/

相关文章:

javascript - 推送多个 json 数组 - javascript

mysql - CodeIgniter NOW()插入: what's the fastest way?

mysql - 编辑页面更新问题 -> 覆盖超过应有的内容

php - 如何通过存储过程将文件插入MySQL数据库?

c# - 参数化查询需要未提供的参数 c#

mysql - 关于index和mysql的一般问题

mysql 加载内文件/外文件

c# - 如何判断 JSON 结果是对象还是数组?

android - 在滚动时在 listView 中添加更多 json 数据

php - MySQL 自动提交与 begin_transaction