正确的语法来在Node中查询MYSQL中的JSON_SET
P粉903052556
P粉903052556 2023-08-31 20:22:09
0
1
424
<p>我需要从Node设置/更新MYSQL表中的JSON数组,我有这个查询,它会抛出一个<code>Invalid JSON path expression</code>错误。 例如,我想要找到键为<code>2022-01-03</code>的对象,如果存在,则将其值更新为<code>O 08:00</code></p> <pre class="brush:php;toolbar:false;">UPDATE allemployees SET schedule = JSON_SET(schedule, '$.2022-01-03', 'O 08:00') WHERE name_cyr = 'John Doe'</pre> <p>我的表中的JSON如下:</p> <pre class="brush:php;toolbar:false;">[{"2022-01-03": "H 08:00"}, [{"2022-01-04": "H 08:00"}] ]</pre></p>
P粉903052556
P粉903052556

全部回复(1)
P粉851401475
UPDATE allemployees
SET schedule = JSON_SET(schedule, '$[0]."2022-01-03"', 'O 08:00') 
WHERE name_cyr = 'John Doe';

https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=2c59600049b4dfc1675c444a6da578bb

  1. 路径"2022-01-03"包含破折号,必须用双引号括起来。

  2. 要设置的值不是上级值,而是明确数组元素的组成部分。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!