【问题标题】:Use formula to pull identity from one field to another使用公式将身份从一个字段拉到另一个字段
【发布时间】:2020-05-07 18:02:48
【问题描述】:

我在 mysql 表中有一个字段,它以 JSON 格式存储事件。这个 JSON 在其中包含事件所涉及的文件的 ID。有没有办法让另一个字段自动填充该文件 ID?类似于 Excel 中的公式字段? JSON 中的格式为"item_id": "1234567"

SQL 新手,非常感谢您的帮助。 :)

“事件”列中的 JSON 示例:

{“video_proc_producer_ver”:2,“mp_event”:{“project_name”:“一些 project","project_account":"一些客户","mp_notes":"没有可玩的 为 item_id 找到的组合 ID:1234abcd.\\n\n","item_name": "file.mov","mp_m_stamp": "2020-03-09 02:27:50","mp_c_stamp": "2020-03-09 02:22:14","mp_processing_mask": "4","c_user_id": "123456","mp_export_time": "2020-03-09 02:24:22","item_id": "0987654","project_id": "1234","mp_complete_time": "2020-03-09 02:27:50"}}

结果列file_id: 0987654

我知道我可以使用表外的某些进程来提取该信息并将其插入,但我想知道是否存在与 in 类似的计算列的等价物,除了我可以在表内使用来自动填充.如果是这样,我需要创建什么样的列,我会使用什么公式?

【问题讨论】:

  • 请提供示例数据和预期结果以澄清您的问题。

标签: mysql sql json select


【解决方案1】:

您似乎想要访问 json 对象的内容。在 MySQL 中,您可以使用 json_extract()->> 运算符,如下所示:

select event, event ->> '$.mp_event.item_id' file_id from mytable

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-16
    • 1970-01-01
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    相关资源
    最近更新 更多