精华内容
下载资源
问答
  • mysql创建表的时候,添加字段注释

    万次阅读 多人点赞 2019-01-05 22:59:03
    mysql创建表的时候,添加字段注释 直接po代码和案例 #创建表的时候写注释 CREATE TABLE userinfo( id INT COMMENT '编号', uname VARCHAR(40) COMMENT '用户名', address VARCHAR(120) COMMENT '家庭住址', ...

    mysql创建表的时候,添加字段注释

    直接po代码和案例

    #创建表的时候写注释
    CREATE TABLE userinfo(
    	id INT COMMENT '编号',
    	uname VARCHAR(40) COMMENT '用户名',
    	address VARCHAR(120) COMMENT '家庭住址',
    	hobby VARCHAR(200) COMMENT '爱好'
    
    )COMMENT = '用户信息表';
    
    #修改表的注释
    ALTER TABLE userinfo COMMENT '用户信息资料表';
    
    #修改字段的注释,注意:字段名和字段类型照写就行
    ALTER TABLE userinfo MODIFY COLUMN uname VARCHAR(40) COMMENT '姓名';
    
    #查看表注释的方法,在生成的SQL语句中看
    SHOW CREATE TABLE userinfo;
    #在元数据的表里面看
    USE information_schema;
    SELECT * FROM TABLES WHERE TABLE_SCHEMA='shoppingcart' AND TABLE_NAME='userinfo';
    
    #查看字段注释的方法
    SHOW FULL COLUMNS FROM userinfo;
    #在元数据的表里面看
    SELECT * FROM COLUMNS WHERE TABLE_SCHEMA='shoppingcart' AND TABLE_NAME='userinfo';

    展开全文
  • 平时Wrapper大家都知道一般是加在where后的条件,但是我想灵活地写select后的字段怎么办呢? 首先推荐大家学习一定要看文档,点我 大前提:CURD的执行接口需要有Wrapper传参,比如list(Wrapper<T...

    🍬🍬🍬文章目录

    查询

    其他


    本文基于MybatisPlus3.0.6,首先建议要好好看文档:MyBatis-Plus文档

    大前提:CURD的执行接口需要有Wrapper传参,比如list(Wrapper<T> queryWrapper)、page(IPage<T> page、Wrapper<T> queryWrapper)、listObjs(Wrapper<T> queryWrapper)

    以下代码我把LambdaQueryWrapper和QueryWrapper混用的,实际上用哪个都行。用Lambda的好处是降低代码的耦合性(不需要把字段名写死),但是不利于添加函数处理。(懂的不要奇怪,不懂的留言或者进群讨论)


    查询

    🍬 01. 只查询指定字段

    select(字段1,字段2…)

    public List<ClientBanner> getListById(String businessId) {
        LambdaQueryWrapper<ClientBanner> wrapper = new LambdaQueryWrapper();
        // 商家图片,未删除,可用状态
        wrapper.eq(ClientBanner::getBusinessId,businessId)
                .eq(ClientBanner::isDelState,false)
                .eq(ClientBanner::isUsable,true)
                .select(ClientBanner::isDelState,ClientBanner::getBusinessId); // 只查询指定字段
        List<ClientBanner> list = this.list(wrapper);
        return list;
    }
    

    控制台打印

    : ==>  Preparing: SELECT del_state,business_id FROM client_banner WHERE business_id = ? AND del_state = ? AND usable = ? 
    : ==> Parameters: 55456(String), false(Boolean), true(Boolean)
    : <==      Total: 2
    

    不用LambdaQueryWrapper的方式为: 02. 对查询字段进行函数处理

    🍬 02. 对查询字段进行函数处理

    使用QueryWrapper,传入数据库字段的时候加上"left(content,2) content" 这种函数处理 (别忘了起别名)

    public IPage<ClientEncyArticles> listBySplitPage(SplitPageDTO dto) {
        QueryWrapper<ClientEncyArticles> wrapper = new QueryWrapper<ClientEncyArticles>();
        wrapper.eq("del_state",false)
                .orderByDesc("create_time")
                .select("id","author","left(content,2) content","cover_picture","create_time");
        IPage<ClientEncyArticles> page = this.page(new Page<>(dto.getPage(), dto.getPageSize()), wrapper);
        return page;
    }
    

    控制台打印

    : ==>  Preparing: SELECT id,author,left(content,2),cover_picture,create_time FROM client_ency_articles WHERE del_state = ? ORDER BY create_time DESC LIMIT ?,? 
    : ==> Parameters: false(Boolean), 0(Long), 10(Long)
    : <==      Total: 10
    

    🍬 03. 排除/过滤字段查询

    文档提到:过滤查询字段(主键除外),入参不包含 class 的 调用前需要wrapper内的entity属性有值!指定字段查询和过滤字段查询这两类方法重复调用以最后一次为准 (指定查询和过滤查询不会同时存在)

    • 即过滤查询不能过滤主键
    • 使用过滤查询时需要传clsss参数或者用setEntity方法,目的就是把实体传过去。看下面代码

    使用select(i->!i.()) (如果不加! 就是指定字段查询,这种指定字段查询不如 01. 只查询指定字段02. 对查询字段进行函数处理 简便)

    • .select(i->!i.getProperty().equals("delState"));
    • .select(i->!i.getColumn().equals("del_state"));
    public IPage<ClientEncyArticles> listBySplitPage(SplitPageDTO dto) {
        ClientEncyArticles cc = new ClientEncyArticles();
        QueryWrapper<ClientEncyArticles> wrapper = new QueryWrapper<ClientEncyArticles>();
        wrapper.eq("del_state",false)
        		//.setEntity(new ClientEncyArticles()) //如果下边参数不写ClientEncyArticles.class,这里要加setEntity
                .orderByDesc("create_time")
                // .select(ClientEncyArticles.class,i->!i.getColumn().equals("del_state")); // 填的是数据库字段名
                .select(ClientEncyArticles.class,i->!i.getProperty().equals("delState")); // 填的是实体类字段名,个人认为用这个好一些
        IPage<ClientEncyArticles> page = this.page(new Page<>(dto.getPage(), dto.getPageSize()), wrapper);
        return page;
    }
    

    控制台打印

    ==>  Preparing: SELECT id,author,type,content,cover_picture,create_time FROM client_ency_articles WHERE del_state=? AND del_state = ? ORDER BY create_time DESC LIMIT ?,? 
    ==> Parameters: false(Boolean), false(Boolean), 0(Long), 10(Long)
    <==      Total: 10
    

    😁欢迎加入QQ群交流: [游戏-Web-开发技术栈 ☄️] '300567032’
    点击下方图标一键加入!
    游戏-Web-开发技术栈 ☄


    其他

    🍬自定义where后的所有内容,直接写sql

    文档-last函数:无视优化规则直接拼接到sql的最后。
    在这里插入图片描述
    最终可以这样:按照本文上边的查询用法,相当于自定义了sql的select部分;剩下的直接用last函数开搞,整体相当于是手写SQL
    (不知道mybatisplus具体的优化规则是什么样的,偶尔使用、自己注意下sql的效率应该没什么问题)

    不过,如果真要这么用,可能还不如直接写SQL顺手


    🍬单独set某个字段

    update()函数 (文档链接)

    源码

    示例
    在这里插入图片描述


    😁欢迎加入QQ群交流: [游戏-Web-开发技术栈 ☄️] '300567032’
    点击下方图标一键加入!
    游戏-Web-开发技术栈 ☄


    展开全文
  • 文章目录Mybatis plus - 映射字段时排除不必要的字段,忽略字段1、声明该字段是 transient 的2、声明该字段是 static 的3、通过注解声明该字段不是一个数据库表里面的字段 Mybatis plus - 映射字段时排除不必要的...

    Mybatis plus - 映射字段时排除不必要的字段,忽略字段


    1、声明该字段是 transient 的

    private transient  Integer a;
    

    2、声明该字段是 static 的

    private static Integer a;
    

    3、通过注解声明该字段不是一个数据库表里

    展开全文
  • Mysql修改字段名、修改字段类型

    万次阅读 多人点赞 2018-02-23 15:45:02
    mysql修改字段类型: --能修改字段类型、类型长度、默认值、注释 --对某字段进行修改 ALTER TABLE 表名 MODIFY COLUMN 字段名 新数据类型 新类型长度 新默认值 新注释; -- COLUMN可以省略 alter table table1 ...

    1 修改字段类型、字段名、字段注释、类型长度、字段默认值

    mysql修改字段类型:	 
    --能修改字段类型、类型长度、默认值、注释
    --对某字段进行修改
    ALTER  TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度  新默认值  新注释;
     -- COLUMN关键字可以省略不写
    
    alter  table table1 modify  column column1  decimal(10,1) DEFAULT NULL COMMENT '注释'; -- 正常,能修改字段类型、类型长度、默认值、注释
    
    alter  table table1 modify column1  decimal(10,2) DEFAULT NULL COMMENT '注释'; 
    -- 正常,能修改字段类型、类型长度、默认值、注释
    
    mysql修改字段名:
    ALTER  TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型;	 
    alter  table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'; -- 正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2; -- 报错 
    
    mysql> alter table white_user change column name nick_name  varchar(50) null comment '昵称'; -- 正确
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    

    2 修改表名

    ALTER TABLE 旧表名 RENAME TO 新表名 ;
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user   |
    +-------------------+
    1 row in set (0.00 sec)
    
    
    
    mysql> alter table white_user rename to white_user_new ;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user_new    |
    +-------------------+
    1 row in set (0.00 sec)

    3 修改表的注释

    ALTER TABLE 表名 COMMENT '新注释'
    
    mysql> alter table  white_user_new comment '新表-白名单表' ;
    Query OK, 0 rows affected (0.01 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;
     CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表' 
    
    
    

    4

    在指定位置插入新字段

    ALTER TABLE 表名 ADD [COLUMN] 字段名 字段类型 是否可为空 COMMENT '注释' AFTER 指定某字段 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new add column erp varchar(50) not null comment 'erp账号' after name ;
    Query OK, 0 rows affected (0.03 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加erp字段
    
    mysql> show create table white_user_new ;
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号', 
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    
    mysql> alter table white_user_new add position varchar(50) not null comment '岗位' after name ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加position字段。
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `position` varchar(50) NOT NULL COMMENT '岗位',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    mysql> alter table white_user_new add  mobile varchar(50) not null comment '手机号码' before position ;
    --报错,在position字段前添加mobile字段,不能使用before关键字
    

    5 删除字段

    ALTER TABLE 表名 DROP [COLUMN] 字段名 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new drop column position ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> alter table white_user_new drop erp ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    

    -------------------------------

    JobShow裁员加班实况

    互联网避坑指南:各公司公积金、年(中)终奖、加班回报、福利

    薪火相传,欢迎新增,欢迎转发👏👏👏

    【发布3天:累计访问人数 5000+

    -------------------------------  

    大头记账本

    生活花销,便捷清晰,安全加密。免费永久提供服务。

    -------------------------------

    恋爱花销】记账本

    【统计谈恋爱花了多少花哪去了,做到心中有数】

    安全加密,免费永久提供服务

    -------------------------------

    更多企业内的技术应用和使用技巧,请移步至我的公众号【程序员实用技能】

    图片

    展开全文
  • 1.增加一个字段 代码如下 复制代码 //增加一个字段,默认为空alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; //增加一个字段,默认不能为空alter table user add COLUMN...
  • JIRA配置手册 (3):字段和界面

    千次阅读 2018-08-20 11:30:00
    作者:Misha 来源:原力注入在前面我们简单介绍了问题类型和工作流的配置方法,今天我们来聊一聊字段和界面这两个互相依赖的家伙。界面即Issue展示给用户可见的表单页面,...
  • Mapstruct映射字段时忽略字段

    千次阅读 热门讨论 2021-01-22 17:11:43
    今天用mapstruct映射字段转换对象的时候,想要忽略公共基础字段(类似于id,创建时间,更新时间这种)。从网上搜了下,用法都是在接口上写Mapping,然后配置target=‘字段名’,ignore='true'。 能用,但是太麻烦。...
  • mysql添加字段和修改字段的位置

    千次阅读 2019-09-03 11:12:27
    添加字段: alter table 表名 add 字段字段类型; 修改字段的位置: 修改字段排列位置 ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2 参数说明 FIRST,可选参数 将字段1,修改为表的第一个字段...
  • MySQL添加字段到指定字段后面

    千次阅读 2019-11-06 00:43:26
    #MySQL添加字段到指定字段后面 alter table t1 add c1 int(4) after c2; 把字段从c1添加到c2后面字段
  • ES查询-空字段和非空字段结果

    千次阅读 2020-06-17 16:33:14
    mysql查询返回某个字段为空值的结果写法是select * from 表名 where 字段名 is null 在elasticsearch中查询语句为 GET index/type/_search { "query": { "bool": { "must_not": { "exists": { "field": ...
  • spring+mybatis下BLOB字段的图片存取代码

    千次下载 热门讨论 2013-09-17 09:40:26
    spring+mybatis下BLOB字段的图片存取代码,仅整理了Controller层的代码,service和dao的代码很简单,所以没有整理
  • mysql中如何使用合适的字段字段长度

    万次阅读 多人点赞 2018-11-11 20:40:33
    下面是mysql一个字段中含有哪些信息 一般重要的字段为类型,长度,属性,非空,索引,自增等等。 注:A_I:auto_increment,代表自增。   字段的类型有好多种,先说下字段中比较常用的类型和长度 整数型...
  • hive添加字段 修改字段顺序

    千次阅读 2020-05-08 09:36:44
    首先要确定的一点是hive底层存储是文件的形式,如果表中每个字段都已经有值,此时进行字段移动并不能将值一起移动 只有当字段和他对应的值不匹配的时候可选择调整字段顺序 假设当前表有四个字段 顺序为 a b c d 1...
  • hive修改字段字段类型

    万次阅读 2020-01-15 16:19:53
    hive修改字段类型语句:alter table 表名 change column 原字段名 新字段字段类型; alter table user_chain change column u_register u_registe date;(u_register原类型为string类型) 这样修改会报一个错误...
  • 我们现在要对第二行和第三行的customername、linkman、linkmantel这三个字段去重查询 要得到的结果肯定只有三行,distinct肯定是不行的 也就是这样的效果 二、进行分析 要想得到这样的效果 首先你得有个表,...
  • 7、数据表添加字段(三种方式)

    千次阅读 2020-10-10 10:12:59
    MySQL 数据表是由行和列构成的,通常把表的“列”称为字段(Field),把表的“行”称为记录(Record)。随着业务的变化,可能需要在已有的表中添加新的字段。 MySQL 允许在开头、中间和结尾处添加字段。 在末尾添加...
  • distinct 一个字段,查询所有字段

    千次阅读 2020-06-08 14:47:49
    今天开发遇到一个问题,我需要去重某个字段,查询到所有字段 查了很久终于找到了解决的方案,记录如下: 例如: select distinct id from table 会去重id字段重复的值,但是查询出来的也只有id字段,如果你想查询id...
  • SQL SERVER 添加字段说明语句

    千次阅读 2019-08-21 15:12:44
    使用SQL语句添加数据库字段的说明,测试表如下: --测试数据 if not object_id(N'T') is null drop table T Go Create table T([Id] int,[Name] nvarchar(22)) Insert T select 1,N'张三' union all select 2,N'...
  • Mysql数据库之在指定字段后加入字段

    千次阅读 2020-09-30 09:46:39
    Mysql数据库之在指定字段后加入字段 alter table tablename add column columnname varchar(64) not null after somecolumn; tablename指的是表名,columnname指的是新增字段名,somecolumn指的是表中原有的字段。no...
  • alter table bas_cm_tenant_verification drop column if exists verify_type;
  • oracle 表字段值拼接以及部分字段值拼接 1、表字段值拼接: 拼接符号:|| 格式:update 表名 set 字段3 = 字段1 || 字段2 实例语句:update t_oa_test t set t.title_content= title||content 拼接前拼接后对比...
  • 根据所有字段去重: SELECT DISTINCT * from dbo.book sql根据多个字段去重: SELECT title,isbn,author_id ,page_count from dbo.book group by title,isbn,author_id ,page_count 或者: SELECT DISTINCT ...
  • mongoTemplate查询指定字段

    千次阅读 2020-06-29 14:16:35
    * @param fields 要查询的字段 * @return */ public InfoSupplementEntity findTest(String id, List<String> fields) { Query query = new Query(Criteria.where("id").is(id)); Field findFields = qu...
  • 1. postgresql删除字段,存在该字段才删除 alter table [表名] drop column if exists [字段名]; 2.Postgresql批量删除/添加一张表的字段 增加 ALTER TABLE 【表名】 ADD COLUMN 【字段名】【数据类型】 【限制】, ...
  • 回归正题,我们这次来讲一下,怎么样通过mp将数据库中的一个字段更新为null. 可能很多人会觉得奇怪,更新为null, 直接set field = null 不就可以了。这里大家要注意一下,一般情况,我们在使用mp的时候,他的默认...
  • 通过UpdateWrapper修改指定的列 重点语句:updateWrapper.set("SESSION_KEY", "abc"); 使用版本:3.0.4 使用场景: UpdateWrapper updateWrapper = new UpdateWrapper(); updateWrapper.eq("ID", 0);.....
  • mysql order by 多个字段排序

    万次阅读 2020-08-27 12:07:22
    工作中需用到order by后两个字段排序,但结果却产生了一个Bug,以此备录。 【1】复现问题场景 为了说明问题,模拟示例数据库表students,效果同实例。 如下语句Sql_1: 1 SELECT * FROM students st ORDER BY ...
  • * springboot 处理返回结果中字段为空或为null,不展示字段的问题(字段展示不全) */ @Configuration public class FastJsonConfiguration extends WebMvcConfigurationSupport { /** * 使用阿里 fastjson ...
  • mysql 计算字段/字段(百分比)

    千次阅读 2019-06-28 17:12:59
    round( 字段 / 字段 , 保留小数位数) 注意: COUNT(p.id)/c.sum 计算时,不能使用别名代替,否则报错(全部数学运算都是) select COUNT(p.id) as package_count, c.sum, ROUND(COUNT(p.id)/c.sum,3) as ...
  • oracle某个表增加或者删除字段,再调整字段顺序,操作参考 2019-03-14 1000 星期四 enAn -- 2019-03-14 0933 星期四 复制表结构和数据,增加数据 --正式表 wsdl_log select * from wsdl_log; -- 创建备份表wsdl_log_int...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,812,950
精华内容 1,125,180
关键字:

字段