Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem MySQL select podle json BLOBu

Mám MySQL DB. V ní je tabulka subuser, která jako poslední sloupec obsahuje BLOB data, ve kterém jsou data v json formátu, např.:

{"data":"{\"username\":\"LE056168\",\"firstname\":\"Lenka\",\"lastname\":\"Hor\\u00e1\\u010dkov\\u00e1\",\"group\":2,\"segment\":3,\"admin\":\"0\"}","name":"Lenka Hor\u00e1\u010dkov\u00e1","email":"xyz@seznam.cz","subuser_id":"4450","admin":"0"}

A já potřebuju selektovat záznamy podle group_id, např. všechny, které budou mít group_id = 1.

Našla jsem tohle:

SELECT *
FROM cps_subuser
WHERE data
REGEXP "^{.*\"group_id\":0,.*}$"

ale bohužel při daném rozsahu DB (cca 4 000 záznamů, nové stále přibývají), je to nepoužitelně pomalé, zvláště, když je to součástí joinu ještě několika dalších tabulek, které mají také řádově tisíce záznamů[/code]

Je nějaký jiný efektivnější způsob jak se k datům dostat? Když přijdu s nápadem data extrahovat do samostatných sloupečků, tak se mnou šéf vyrazí dveře, protože on je na tento způsob ukládání dat moc pyšný. Vysvětloval mi, že to tak prý je z bezpečnostních důvodů.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Tak ať ty data rovnou zahazuje, to bude rychlejší a bezpečnější. A dostupnost dat bude prakticky ste…
Wikan 07.06.2012 16:56
Wikan
:-D:-D:-D:-D O té bezpečnosti si myslím svoje, dělala jsem mj. OKpráci (to je ten soft, co ho všich…
Anicka 07.06.2012 22:38
Anicka
Ono je to stejné, jako by šéf železářství prohlísil, že kvůli zlodějům se všechny šroubky a matičky… poslední
Jan Fiala 08.06.2012 06:52
Jan Fiala

:-D:-D:-D:-D

O té bezpečnosti si myslím svoje, dělala jsem mj. OKpráci (to je ten soft, co ho všichni chtěli začátkem roku zpět) a soft pro mezibankovní platební styk, tam se zcela nepochybně na bezpečnost dat kladl velký důraz, ale data do db v json formátu nikoho zapisovat nenapadlo ani omylem.

Ono je to stejné, jako by šéf železářství prohlísil, že kvůli zlodějům se všechny šroubky a matičky sesypou do jedné velké bedny a na noc se budou zamykat.
Ale nezajímá ho, že když příjde zákazník, tak prodavač stráví 2 hodiny přebíráním bedny, aby mu našel požadované 3 šroubky. Kdyby to bylo rozdělené v krabičkách jako předtím, stačil by obsloučit 20 dalších a zisk prodejny by byl mnohem vyšší.

Zpět do poradny Odpovědět na původní otázku Nahoru