Sejujurnya, ini adalah arsitektur yang buruk untuk menyimpan data, dan dapat mengakibatkan beberapa masalah kinerja yang serius.
Jika Anda benar-benar tidak memiliki kendali untuk mengubah database, Anda bisa selesaikan ini dengan menguraikan nilai dengan SUBSTRING
seperti di bawah ini, tetapi mengarah ke jalan yang sangat tidak menyenangkan:
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":"')
)
Dan sayangnya, itu semudah mungkin.