php - 使用 json 列连接表
解决方案
您可以使用JSON_CONTAINS
执行以下操作:
SELECT * FROM table1 JOIN table2 ON
JSON_CONTAINS(table1.doc_sharewith, JSON_QUOTE(table2.id))
或在 Laravel 中:
Table1::join('table2', \DB::raw('JSON_CONTAINS(table1.doc_sharewith, JSON_QUOTE(table2.id))'), '=', 1)
请注意,这样的连接将非常慢,因为它无法使用索引,因此为了提高效率,您应该切换到规范化数据结构或像 MongoDB 这样的专用 JSON 数据库
推荐阅读
- android - 单击导航栏中的软主页按钮也会触发视图的底层单击侦听器
- javascript - 如何在我自己的网页或应用程序上使用位于网站上的 JavaScript 函数?
- ag-grid - 为 ag-grid 单元格中的鼠标和键盘事件绑定事件侦听器
- python - 使用 yapf 对内联注释进行间距
- overlay - nixos:覆盖调用覆盖
- docker - 使用一个 dockerfile 从两个不同的源构建
- google-chrome - 我发现 Chrome TextDecoder 错误了吗?
- python - Jinja 模板,如何通过循环将 html 嵌套到容器中?
- python - 线性单细胞两层人工神经网络产生恒定预测
- server - Perforce Ghost 仓库