Heim  >  Artikel  >  Datenbank  >  So entfernen Sie das JSON-Feld in MySQL

So entfernen Sie das JSON-Feld in MySQL

WBOY
WBOYnach vorne
2023-05-28 13:24:444094Durchsuche

    MySQL-Tipps zum Entfernen von JSON-Feldern

    Manchmal werden einige Informationen in der Datenbank in JSON-Form gespeichert, wenn dies der Fall ist zu lang, wird der SQL-Vorgang während des Abrufvorgangs langsamer und es wird verschwenderischer, wenn Sie nur bestimmte Schlüsselwerte abrufen.

    ±—±---------------------------------------------------------------+
    | id | data |
    ±—±---------------------------------------------------------------+
    | 1 | {“Tel”: “132223232444”, “name”: “david”, “address”: “Beijing”} |
    | 2 | {“Tel”: “13390989765”, “name”: “Mike”, “address”: “Guangzhou”} |
    ±—±---------------------------------------------------------------+

    mysql, um JSON abzurufen und seinen Wert zu erhalten Details, ohne den Schlüssel zu kennen

    select json_extract('{"name":"Zhaim","tel":"13240133388"}',"$.tel");

    Ich möchte einen rot markierten Namen in dieser MySQL-Datenbank erhalten. Der Inhalt ist wie oben gezeigt

    #🎜 🎜#Erstellen Sie eine Ansicht und übernehmen Sie den Namen dieses Felds, da sein Schlüssel: „20071090“ dynamisch und unsicher ist und an dieser Stelle nur einmal angezeigt wird. Zuerst nehme ich den Wert unter dem Schlüssel der ersten Ebene ==>selects

    select get_json_object(i.extra, '$.sale_currency');
    select sum(get_json_object(i.extra, '$.sale_price') * i.count) as sale_price;

    So entfernen Sie das JSON-Feld in MySQL

    Auf dieser Basis nehmen Sie dann die nächste Ebene, da diese Ebene ein dynamischer Schlüssel ist und die ZDLSXM->'$.selects nicht verwenden kann 'Methode im ersten Schritt, also wähle ich die Methode substring_index aus, um die geschweiften Klammern zu entfernen, und verwende dann CONCAT(), um sie in New json zu spleißen, lösche den roten Bereich des Symbols unten

    So entfernen Sie das JSON-Feld in MySQL

    { "selects" :{ "20071090" :{ "NN" : 41,
    "LXFS1" : "12365",
    "GH" : "20071090",
    "RZZW" : "办公室主任",
    "sxzym" : "园林植物与观赏园艺",
    "ZC" : "副教授",
    "XGW" : "行政管理后勤",
    "XB" : "男",
    "ZZMM" : "中共党员",
    "ZWZC" : "高级职称",
    "MZ" : "汉",
    "CSRQ" : 307123200000,
    "XL" : "硕士",
    "selectKey" : "20071090",
    "XM" : "张三",
    "GZBM" : "办公室",
    "PZGW" : "副教授三级岗位",
    "XW" : "农学硕士" }}}

    So entfernen Sie das JSON-Feld in MySQL

    #🎜 🎜#

    Sie können diesen Namen übernehmen, indem Sie ihn um eine weitere Ebene wickeln#🎜 🎜#

    SELECT ZDLSXM->'$.selects' from VI_YXGR
    So entfernen Sie das JSON-Feld in MySQL

    Das obige ist der detaillierte Inhalt vonSo entfernen Sie das JSON-Feld in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen