sql >> Database teknologi >  >> RDS >> Sqlserver

Forespørg JSON i kolonnen SQL Server 2012

Helt ærligt, dette er en frygtelig arkitektur til lagring af data og kan resultere i nogle alvorlige problemer med ydeevnen.

Hvis du virkelig ikke har kontrol over at ændre databasen, kan du kan opnå dette ved at analysere værdien med SUBSTRING som nedenfor, men det fører ned ad en meget ulykkelig vej:

SELECT *
FROM tb1
JOIN tb2 on tb2.bvin = 
    SUBSTRING(
        tb1.json
        ,CHARINDEX('"bvin":"', tb1.json) + LEN('"bvin":"')
        ,CHARINDEX('"', tb1.json, CHARINDEX('"bvin":"', tb1.json) + LEN('"bvin":"')) - CHARINDEX('"bvin":"', tb1.json) - LEN('"bvin":"')
    )

Og det er desværre så nemt som det kan være.



  1. Hentning af data fra lagret procedure med Entity Framework

  2. crawle en html-side ved hjælp af php?

  3. Hvad er den bedste flugtkarakterstrategi til Python/MySQL-kombination?

  4. Hvorfor mislykkes oprettelsen af ​​Foreign Key i Laravel 5.8?