【发布时间】:2020-01-17 07:42:27
【问题描述】:
SHOPS
+----+---------------+
| id | shop_tag |
+----+---------------+
| 1 | 1234560000000 |
+----+---------------+
LOGS
+----+-------------------------------------+
| id | request |
+----+-------------------------------------+
| 1 | {"key":"123","tag":"123456*****"} |
+----+-------------------------------------+
shop_tag列为int类型,text类型的日志请求列,包含json字符串。
现在我想在从两列中提取 123456 后加入这两个表。
我正在尝试这个但没有帮助
SELECT logs.id FROM logs INNER JOIN shops ON left(shops.shop_tag,6) = left(right(logs.request,6),26)
请注意,shop_tag 和 request 列的长度和结构都是固定的。
【问题讨论】:
-
你用的是什么版本的 MySQL?
-
可能
{"key":"123","tag":"123456*****"}和{"tag":"123456*****","key":"123"}不一样。 -
@Nick MySQL 版本是 5.7.26
标签: mysql join left-join inner-join