最近项目有个需求,把sql语句中的select字段名显示出来,可是有时候表里或者该sql语句查询数据为空,就不能通过循环数据,获取字段名
查了很多信息,也没有能直接获取字段名的,基本都是正则分析
最后我想到了一个方案,希望能帮到大家
select * from good_info limit 1
这是我们想要查看字段名的sql语句,如果没有数据,这个会返回null,我们就不能通过循环一条数据来获取字段名
我的想法是跟一个必有数据的表进行关联,这样就肯定会出来一天数据,可以通过循环数据来显示字段名
SELECT
b.*,
a.id AS my_user_id
FROM
`emo_users` AS a
LEFT JOIN ( SELECT *, '0' AS `good_my_user_id` FROM emo_v_authority AS c LIMIT 1 ) AS `b` ON `a`.`id` = `b`.`good_my_user_id`
LIMIT 1
这样联合查询之后,过滤掉my_user_id字段和good_my_user_id字段,剩下的就是我们想要的所以字段值了