不会吧,不会吧,连校门口卖冰棍的老太太都知道前后端分离了,你还不知道?可能大家都听说过前后分离,如果你不仅知道还能很熟练的话,就代表你已经是个苦逼的打工人了,毕竟独立开发,谁给你负责前端。
初为打工人,我就很不适应前后端分离,毕竟以前前后都是自己来,现在不一样了,咱们只需要写写接口,传传数据就行了。听着是不是很简单,屏幕前的你是不是感觉又行了。
先别高兴太早,麻烦着呢。首先说一下前后端分离的情况下,后端都负责做什么。第一步,当然是确定需求啦,需求不清楚,你开发出来的东西是没法用的。我们需要根据需求去建表,写增删改查方法,最重要是跟前端对接,对接最重要的是把前端需要的数据给他查出来,把你需要的参数让前端传过来,这要求严格的一致,如果不一致就可能导致数据的不一致,可能会扯皮半天。今天主要讲一下怎么用sql查json数据?
用sql查json数据,需要用到->,就是这个就可以把json数据查出来。
select b.fields -> ‘$.DP’ from b;
这个sql的意思就是把b表的fields字段(存放json数据的字段)中的DP属性的值给查出来。
这是最简单的用法,试想一下,如果这个json字符串里有一个对象,例如这样的:{“id”:“01”,“name”:“jack”},像这种怎么取,它不再是一个属性,而是一个对象,这时可以用REPLACE去除结果中的双引号,
可以这样写:
select REPLACE(cast(b.fields -> ‘$[0].id’ as char),"","" ) AS ‘id’ FROM b
相信大家也看出来了,就是把这个属性值中的引号替换成空格(因为这里格式特殊,不用替换,替换以后就不是jsonl了,所以…)转换成字符,给查找出来。
sql在工作中用的还是挺多的,建议大家多动手练习!!!