码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • SQL小技巧之替换、统计表字段存储数据字节大小。


    文章目录

      • 概要
      • DATALENGTH函数
      • REPLACE、SUBSTRING函数配合使用
      • 小结

    概要

    最近在工作中要进行数据迁移,对有些大字段需要进行存储大小的统计,因此就总结了这篇文章


    DATALENGTH函数

    用于返回任何表达式的数据长度(以字节为单位)。这对于了解字段或变量在数据库中的实际存储大小非常有用,尤其是在处理可变长度的数据类型(如 VARCHAR, NVARCHAR, VARBINARY 等)时。

    SELECT MAX(DATALENGTH(RESULT_DATA)) FROM KISC_INTELLECT_PRODUCER_LOG
    SELECT MAX(DATALENGTH(ACCEPT_PARAM)) FROM KISC_INTELLECT_PRODUCER_LOG
    
    SELECT MAX(DATALENGTH(RESULT_PARAM)) FROM KISC_INTELLECT_BIZ_LOG_DETAIL
    SELECT MAX(DATALENGTH(RESULT)) FROM KISC_INTELLECT_BIZ_LOG_DETAIL
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • DATALENGTH 函数返回的是字段值的字节长度。如果你想要将字节长度转换为千字节(KB),你可以简单地将字节数除以 1024。

    例如,如果你有一个字段,其 DATALENGTH 返回 3399806 字节,你可以使用以下公式来计算它占用的 KB 数:

    KB = DATALENGTH(字段名) / 1024
    KB = 3399806 / 1024 ≈ 3324.23 KB
    
    • 1
    • 2

    REPLACE、SUBSTRING函数配合使用

    这两个函数搭配主要在更新字段数据的时候,进行字符串精确替换,但是这种也存在一定的缺陷,需要字符串比较固定的。

    话不多说,直接上例子:

    SELECT TOP 100 SUBSTRING(RESULT,22,6),SUBSTRING(RESULT,354,18) FROM KISC_INTELLECT_BIZ_LOG_DETAIL WHERE RULE_CODE = '30001'
    UPDATE KISC_INTELLECT_BIZ_LOG_DETAIL SET RESULT = REPLACE(CAST(RESULT AS NVARCHAR(2000)),SUBSTRING(RESULT,354,18),'123456123456781234') WHERE RULE_CODE = '30001';
    
    • 1
    • 2

    小结

    今天就先总结到这里了,后续遇到更有意思的sql,继续写笔记。


  • 相关阅读:
    图像标签的使用2
    Linux环境安装mysql8.0
    解决 VSCode 配置远程连接,过程试图写入的管道不存在
    PgSQL-内核特性-TupleTableSlotOps
    ps2021没法用神经元滤镜,ps2021神经滤镜不能下载
    get与post区别
    HCIP 实验作业(ppp实验)
    PDF-Word-图片等的互相转换
    竞赛选题 机器视觉opencv答题卡识别系统
    混淆技术研究笔记(五)混淆后如何反篡改?
  • 原文地址:https://blog.csdn.net/xiaobangsky/article/details/137326061
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号