Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да извлека стойности, съхранени в JSON масив в самата MySQL заявка?

REGEXP функцията просто връща 0 или 1. Ще трябва да използвате други низови функции.

Опитайте това:substr(misc,locate('group_id',misc)+11,5) as Misc . Но това предполага, че group_id винаги има 5 знака.

Така че това е по-добре:substring_index(substr(misc,locate('group_id',misc)+char_length('group_id')+3),'"',1) as Misc .

Ето цигулка, за да покажете как работи:http://sqlfiddle.com/#!2/ ea02e/15

РЕДАКТИРАНЕ Можете да се отървете от +3 магическо число, като включите двойните кавички и двоеточие в низовете по следния начин:substring_index(substr(misc,locate('"group_id":"',misc)+char_length('"group_id":"')),'"',1) as Misc



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Не мога да реша дали нормализирането или денормализирането ще работи

  2. Как да конвертирате UTC в местно време в MySQL

  3. SQL грешка:0, SQLState:08S01 Неизправност на комуникационната връзка

  4. Изчисляване на gps координатен радиус

  5. Създаване на първичен ключ на mysql без клъстерен индекс?