zoukankan      html  css  js  c++  java
  • 【MySQL】使用Length和Cast函数计算TEXT类型字段的长度

    背景:

    前段时间,业务需要,为了快速让解析的Excel入库,所以把不是很确定的字段全部设置成了TEXT。

    今天需要进行表结构优化,把字段长度控制在合适的范围,并尽量不使用TEXT类型。

    -- 计算长度
    select LENGTH(CAST(fileName AS CHAR)) from files;

    select MAX(LENGTH(CAST(fileName AS CHAR))) from files;

    select LENGTH(CAST(fileName AS CHAR)) as le from files HAVING le > 20;

    -- 尝试转为VARCHAR类型进行计算,但是报错,也许是因为VARCHAR是变长的,在一个变长的类型上进行长度计算是不合理的。

    -- 这点不是很清楚,等以后学艺更精的时候再解释吧。

    select LENGTH(CAST(fileName AS VARCHAR)) from files;

    [SQL]select LENGTH(CAST(fileName AS VARCHAR)) from files;
    [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'VARCHAR)) from files' at line 1

  • 相关阅读:
    ES6解构赋值
    ES6兼容
    ES6关键字
    ES6模板字符串
    Bootstrap面试题
    Javascript中类型转换的情况以及结果
    事件
    ES6 解构赋值
    ES6 基础(let const)
    数组与字符串常用方法
  • 原文地址:https://www.cnblogs.com/flydkPocketMagic/p/5998522.html
Copyright © 2011-2022 走看看