暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

拒绝select *,Navicat快捷查询表中所有字段以,隔开两种方式【附带阿里开发手册】

小王博客基地 2023-02-24
513

一、前言

今天公司规定了不要使用SELECT *
进行查询,让我想到阿里的《Java 开发手册》

中的ORM 映射
规范也是这样的,于是翻出来看看,刚刚好重温一下!

规范看了一定要实践,严格规范自己的代码风格,做一个优雅的码农哈!

即使公司不要求,我们也要自己养成习惯,大家可以没事多看几遍,不知道哪里下载的小伙伴可以下载一下最新版:黄山版

《Java 开发手册》-黄山版下载:https://github.com/alibaba/p3c

二、规范

在第38页中:

(四) ORM 映射

【强制】
在表查询中,一律不要使用*
作为查询的字段列表,需要哪些字段必须明确写明。

说明:

  • 增加查询分析器解析成本

  • 增减字段容易与 resultMap 配置不一致

  • 无用字段增加网络消耗
    ,尤其是 text 类型的字段。

虽然好了,但是每个表少则8、9个字段,多则几十个字段,自己挨个写实在是太慢了!

我们要学会利用工具,小编这里使用Navicat
,教大家两种方式哈!

三、解决方案

1. 第一种

第一种比较简单是mysql自己结构中存在的表中的列信息,我们查询出来拼接一下就可以了:

我们可以看到这里MySQL
所有表的列都在COLUMNS

在这里插入图片描述

我们直接查询即可:

table_name = '表名'

SELECT
    group_concat( COLUMN_NAME ) 
FROM
    information_schema.COLUMNS 
WHERE
    table_name = 'sys_log';

在这里插入图片描述

当然这样有点缺点,我们连表进行起别名的时候,字段上还是要自己加

当然规范也是不推荐连表的,但是这个表设计不太好,没有冗余字段,只能这样了!

所以推荐第二种方案!

2. 第二种

新建查询-> 查询创建工具

在这里插入图片描述

把需要的表拖进来:

在这里插入图片描述

在勾选自己需要的字段:

有个缺点不能全选
,需要自己一个个的选择,不过可以弥补上面的起别名和各种操作!

在这里插入图片描述

这里演示表起别名:


在这里插入图片描述

sql字段已准备好:

在这里插入图片描述

四、总结

这样就节省了很多时间,遵守了规范,一举两得!

对你有帮助,还请不要吝啬你的发财小手点点关注哈!

写作不易,大家给点支持,你的支持是我写作的动力哈!

关注小编的微信公众号,一起交流学习!文章首发看哦!


文章转载自小王博客基地,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论