首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用UNION将TINYINT更改为BIGINT的Update视图

是一种在数据库中更新视图的操作。视图是基于一个或多个表的查询结果集,通过视图可以简化复杂的查询操作,并提供了一种虚拟的表结构供用户查询和操作。

在这个问题中,我们需要将一个TINYINT类型的列更改为BIGINT类型。TINYINT是一种占用1字节存储空间的整数类型,范围为-128到127。而BIGINT是一种占用8字节存储空间的整数类型,范围更大,可以存储更大的整数值。

要使用UNION将TINYINT更改为BIGINT的Update视图,可以按照以下步骤进行操作:

  1. 创建一个新的视图,该视图包含要更新的表和列。
  2. 使用UNION操作符将原始表和新的BIGINT列连接起来。在UNION操作中,需要将TINYINT列转换为BIGINT类型,并将其放置在相应的位置。
  3. 使用UPDATE语句更新视图中的数据。在UPDATE语句中,将新的BIGINT列的值设置为原始TINYINT列的值。

下面是一个示例:

代码语言:txt
复制
-- 创建视图
CREATE VIEW my_view AS
SELECT id, CAST(tinyint_column AS BIGINT) AS bigint_column
FROM my_table
UNION
SELECT id, CAST(NULL AS BIGINT) AS bigint_column
FROM my_table
WHERE tinyint_column IS NULL;

-- 更新视图数据
UPDATE my_view
SET bigint_column = CAST(tinyint_column AS BIGINT);

在上面的示例中,我们首先创建了一个名为my_view的视图,该视图包含了要更新的表my_table和列tinyint_column。使用CAST函数将tinyint_column转换为BIGINT类型,并将其命名为bigint_column。然后使用UNION操作符将原始表和新的BIGINT列连接起来,确保视图中的每一行都有一个对应的BIGINT值。

接下来,我们使用UPDATE语句更新视图中的数据。将bigint_column的值设置为tinyint_column的值,通过CAST函数将其转换为BIGINT类型。

这样,我们就使用UNION将TINYINT更改为BIGINT的Update视图完成了。这种操作适用于需要将TINYINT类型的列更改为BIGINT类型的场景,例如需要扩展整数范围或进行更复杂的计算时。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云数据库 MySQL:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云数据库 PostgreSQL:https://cloud.tencent.com/product/cdb_postgresql
  • 腾讯云数据库 SQL Server:https://cloud.tencent.com/product/cdb_sqlserver
  • 腾讯云数据库 MongoDB:https://cloud.tencent.com/product/cdb_mongodb
  • 腾讯云数据库 Redis:https://cloud.tencent.com/product/cdb_redis
  • 腾讯云数据库 MariaDB:https://cloud.tencent.com/product/cdb_mariadb
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Mysql 复习总结

from ta    union   select * from tb   自动去除重复    如果不想去除 那么 加all   select * from ta    union all...取出 左右连接交集 视图      如果一个查询结果非常频繁进行操作,就把这个结果创建视图           由查询结果形成一张虚拟表(当做表看) create view viewname...select 语句            使用视图情况; 1 简化查询 2 把多张表放在一个里 3  drop view viewname  alter view viewname...undefined  merge  引用视图语句 与定义视图语句合并  temptable 引用视图时根据视图创建语句建立临时表 瞬间创建一个临时表  undefined 未定义,系统自动选...用 new.列名来表示 对于 insert 删除行用 old 来表示 行中每一列值 用 old.列名来表示 对于 update 修改前行用 old 来表示 修改后行用 new

72620
  • 统计信息查询视图|全方位认识 sys 系统库

    在上一篇《会话和锁信息查询视图|全方位认识 sys 系统库》中,我们介绍了如何使用 sys 系统库总视图来查询会话状态信息以及锁等待信息,本期内容先给大家介绍查询表和索引相关统计信息快捷视图。...PS:由于本文中所提及视图功能特殊性(DBA日常工作中可能需要查询一些统计信息做一些数据分析使用),所以下文中会列出部分视图select语句文本,以便大家更直观地学习它们。...例如:对于bigint(20) unsigned,整个信息就被称为列属性类型,而数据类型只是指bigint is_signed:列类型是否是有符号 is_unsigned:列类型是否是无符号 MAX_VALUE...、sys.x$ps_schema_table_statistics_io 这些视图使用了一个辅助视图x$ps_schema_table_statistics_io 下面我们看看使用视图查询返回结果...、sys.x$innodb_buffer_stats_by_table 这些视图使用了辅助视图sys.x$ps_schema_table_statistics_io 下面我们看看使用视图查询返回结果

    2.2K00

    必看数据库使用规范

    【建议】建表时关于主键:表必须有主键 (1)强制要求主键为id,类型为int或bigint,且为auto_increment 建议使用unsigned无符号型。...【建议】核心表(如用户表)必须有行数据创建时间字段create_time和最后更新时间字段update_time,便于查问题。...这里XX值不要超过5000个。 值过多虽然上线很很快,但会引起主从同步延迟。 【建议】SELECT语句不要使用UNION,推荐使用UNION ALL,并且UNION子句个数限制在5个以内。...因为union all不需要去重,节省数据库资源,提高性能。 【强制】禁止跨dbjoin语句。 【建议】不建议使用子查询,建议子查询SQL拆开结合程序多次查询,或使用join来代替子查询。...【建议】减少使用order by,和业务沟通能不排序就不排序,或排序放到程序端去做。Order by、group by、distinct这些语句较为耗费CPU,数据库CPU资源是极其宝贵

    90750

    MySQL中describe关键字

    写SQL语句时候删掉这个字段就不会报错,加上这个字段添加和查询又会报错,纠结了很久,最后终于试着把describe改为describes,可以正常插入数据,也可以正常查询了,后面在网上一查,describe...在SQL语句中出现关键字和保留字 如果要使用人他们字符意思而不是作为关键字、保留字使用,关键字可以正常使用,但是保留字必须使用`(键盘tab键上面,数字1左边那个按键)来分割。...这个在SQLServer里面是使用[]中括号实现。所以我们要尽量避免使用关键字和保留字来作为表名和字段名。...Reserved Words in MySQL 5.6.23 ACCESSIBLE ADD ALL ALTER ANALYZE AND AS ASC ASENSITIVE BEFORE BETWEEN BIGINT...TINYTEXT TO TRAILING TRIGGER TRUE UNDO UNION UNIQUE UNLOCK UNSIGNED UPDATE USAGE USE USING UTC_DATE

    1.3K20

    深入解析实时数仓Doris:三大数据模型详解

    和 REPLACE 区别在于对于 null 值,不做替换。 HLL_UNION:HLL 类型聚合方式,通过 HyperLogLog 算法聚合。...BITMAP_UNION:BIMTAP 类型聚合方式,进行位图并集聚合。 如果这几种聚合方式无法满足需求,则可以选择使用 agg_state 类型。...数据更新语意 Unique 模型默认更新语意为整行UPSERT,即 UPDATE OR INSERT,该行数据 key 如果存在,则进行更新,如果不存在,则进行新数据插入。...,同时数据写入新文件。...旧 Merge-on-read 实现无法无缝升级到 Merge-on-write 实现(数据组织方式完全不同),如果需要改为使用写时合并实现版本,需要手动执行insert into unique-mow-table

    1.3K11

    如何从 SQL Server 恢复已删除数据

    在我使用 SQL Server 这些年里,最常见问题之一一直是“我们如何恢复已删除记录?” 现在,从 SQL Server 2005 或更高版本恢复已删除数据非常容易。...通过使用标准 SQL Server 函数fn_blog,我们可以轻松获取所有事务日志(包括已删除数据)。但是,我们只需要从事务日志中选定已删除记录。...dbo.Student' AND Context IN ('LCX_MARK_AS_GHOST', 'LCX_HEAP') AND Operation in ('LOP_DELETE_ROWS') 该查询返回提供不同信息列数...之后,我们需要使用此代码片段来获取列数据,如列名称、列大小、精度、小数位数,最重要是叶空位(以确保列是固定数据(=1)) 表。...到目前为止,我们已经知道了表和数据信息,因此我们需要利用这些数据 [ RowLog Contents 0] 分解为表列数据,但为十六进制值。

    17410

    我们已经不用AOP做操作日志了!

    (20)", "bill_type":"tinyint(2)", "create_time":"timestamp", "update_time":"timestamp", "version":"int...":"签收财务网点编码由【】改为【380000】, 签收网点名称由【】改为【泉州南安网点】,签收网点code由【】改为【2534104】,运单状态code由【204】改为【205】,签收财务网点名称由...【】改为【福建代理区】,签收网点id由【0】改为【461】,签收标识,1是,0否由【0】改为【1】,签收时间由【null】改为【2020-04-24 21:09:47】,签收财务网点id由【0】改为【400...image 基于binlog实现方案未来规划 优化发送业务消息实现,使用切面拦截减少对业务代码侵入; 目前暂时不支持对多表关联操作日志记录,需要拓展; 总结 本文以操作日志为题材讨论了操作日志实现方案和可行性...,并且都已经在功能上进行实现,其中使用aop方案也是大部分中小企业首选实现方案,但是在一些金融领域以及erp相关系统,对操作日志记录明细要求极高,常见技术方案很难满足,即使能够满足也会带来一些代码强侵入以及性能问题

    6.8K21

    MySQL系列 | MySQL数据库设计规范

    2.1.3 列数据类型优化 【建议】表中自增列(auto_increment属性),推荐使用bigint类型。...因为varchar是变长存储,比char省空间。...‘用户记录创建时间’, `update_time` timestamp NOT NULL COMMENT ‘用户资料修改时间’, `user_review_status` tinyint NOT...这里XX值不要超过5000个。值过多虽然上线很很快,但会引起主从同步延迟。 【建议】SELECT语句不要使用UNION,推荐使用UNION ALL,并且UNION子句个数限制在5个以内。...【强制】禁止在业务更新类SQL语句中使用join,比如update t1 join t2…。 【建议】不建议使用子查询,建议子查询SQL拆开结合程序多次查询,或使用join来代替子查询。

    3.3K30

    韩旭个人博客SpringBoot + Mybatis + Thymeleaf + MySQL

    该框架使用了特定方式来进行配置,从而使开发人员不再需要定义样板化配置。...2.1.4 数据分析 管理员信息:管理员id,账号,用户名,密码,昵称,状态; 博客信息:博客id, 博客标题, 博客连接,博客封面,博客介绍,博客分类id,博客分类名称,博客标签, 博客装谈,博客视图...`category_rank` int(11) NOT NULL DEFAULT 1 COMMENT '分类排序值 被使用越多数值越大', `is_deleted` tinyint(4)...(20) NOT NULL AUTO_INCREMENT COMMENT '主键id', `blog_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '关联blog...`category_rank` int(11) NOT NULL DEFAULT 1 COMMENT '分类排序值 被使用越多数值越大', `is_deleted` tinyint(4)

    53820

    Hive数据类型

    2.1 整数类型 Hive有4种带符号整数类型:TINYINT,SMALLINT,INT,BIGINT,分别对应Java中byte,short,int,long。字节长度分别为1,2,4,8字节。...在使用整数字面量时,默认情况下为INT,如果要声明为其他类型,通过后缀来标识: 类型 后缀 例子 TINYINT Y 100Y SMALLINT S 100S BIGINT L 100L...类型转换 Hive类型层次中,可以根据需要进行隐式类型转换,例如TINYINT与INT相加,则会将TINYINT转化成INT然后INT做加法。...map元素访问则使用[],例如map['key1']. 4.2 STRUCT STRUCT则封装一组有名字字段(named filed),其类型可以是任意基本类型,元素访问使用点号。...4.3 UNION UNION则类似于C语言中UNION结构,在给定任何一个时间点,UNION类型可以保存指定数据类型中任意一种。

    4.4K11

    赶集mysql军规

    控制单表数据量,单表记录控制在千万级 控制列数量,字段数控制在20以内 平衡范式与冗余,为提高效率可以牺牲范式设计,冗余数据 拒绝3B(big),大sql,大事务,大批量 二,字段类军规 用好数值类型 tinyint...(1Byte) smallint(2Byte) mediumint(3Byte) int(4Byte) bigint(8Byte) bad case:int(1)/int(11) 有些字符转化为数字...用int而不是char(15)存储ip 优先使用enum或set 例如:`sex` enum (‘F’, ‘M’) 避免使用NULL字段 NULL字段很难查询优化 NULL字段索引需要额外空间 NULL...IN() OR改写为UNION 画外音:最新mysql内核已经进行了相关优化 limit高效分页 limit越大,效率越低 select id from t limit 10000, 10; 应该改为...=> select id from t where id > 10000 limit 10; 使用union all替代unionunion有去重开销 尽量不用连接join 务必请使用“同类型

    918100

    MySQL数据库开发 36 条军规

    字段类规约(6个) 用合适整数类型 类型存储空间有符号无符号TINYINT1byte[-128,127][0,255]SMALLINT2byte[-32768,32767][0,65535]MEDIUMINT3byte...、NULL字段复合索引无效) 尽量少用text/blob类型(尽量使用varchar代替text字段),需要时候请拆表 不在数据库存图片,请存图片路径 索引类规约(5个) 合理使用索引...or改写为in(针对同一字段) where a=1 or a=2 改为 where a in(1,2) or改写为union(针对不同字段 ) where a=1 or b=1 改:select...null字段上面 减少count(*) limit高效分页(limit越大,效率越低) limit 10000,10 改为 where id >xxx limit 11 使用union all替代union...(union有去重开销) 发生高并发时,数据库少用两个表以上join 使用group by 去除排序加快效率 例如:group by name 默认是asc排序 改:group by name order

    14310
    领券