Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将列转换为10位_Mysql_Sql_Sqlite_Csv - Fatal编程技术网

Mysql 将列转换为10位

Mysql 将列转换为10位,mysql,sql,sqlite,csv,Mysql,Sql,Sqlite,Csv,我有一个包含电话号码的csv文件,其中一些有9位数,一些有10位数。是否有一个允许对列进行转换的命令,以便只有9位的数字在数字前面追加0 比如说, 如果该列的值为“443332332”和“0441223332”,我希望将带有9个数字的值更改为“0443332332” 对不起,我应该详细说明一下 我想知道是否有一个命令可以轻松地在SQLlite中执行它?我不喜欢使用excel来转换列,好像我可以让它与sqllite一起工作,这样会更简单、更快 使用Excel打开.csv文件 将筛选器添加到列中 从

我有一个包含电话号码的csv文件,其中一些有9位数,一些有10位数。是否有一个允许对列进行转换的命令,以便只有9位的数字在数字前面追加0

比如说,

如果该列的值为“443332332”和“0441223332”,我希望将带有9个数字的值更改为“0443332332”

对不起,我应该详细说明一下

我想知道是否有一个命令可以轻松地在SQLlite中执行它?我不喜欢使用excel来转换列,好像我可以让它与sqllite一起工作,这样会更简单、更快

  • 使用Excel打开.csv文件
  • 将筛选器添加到列中
  • 从A-Z排序,得到所有9位的列
  • 然后按照这里的步骤操作

  • 使用Excel打开.csv文件
  • 将筛选器添加到列中
  • 从A-Z排序,得到所有9位的列
  • 然后按照这里的步骤操作

  • 使用Excel打开.csv文件
  • 将筛选器添加到列中
  • 从A-Z排序,得到所有9位的列
  • 然后按照这里的步骤操作

  • 使用Excel打开.csv文件
  • 将筛选器添加到列中
  • 从A-Z排序,得到所有9位的列
  • 然后按照这里的步骤操作


    如果您确定只需在长度为9的字符串上预加一个零就可以用于您的应用程序,那么一些简单的方法就可以了:

    SELECT CASE WHEN LENGTH(phone_number) = 9 THEN '0'||phone_number
                ELSE phone_number
            END AS phone_number
      FROM your_table
    ;
    
    您还可以根据需要更新表:

    UPDATE your_table
       SET phone_number = '0'||phone_number
     WHERE LENGTH(phone_number) = 9
    ;
    

    如果您确信只需在长度为9的字符串上预加一个零就可以用于您的应用程序,那么一些简单的方法就可以了:

    SELECT CASE WHEN LENGTH(phone_number) = 9 THEN '0'||phone_number
                ELSE phone_number
            END AS phone_number
      FROM your_table
    ;
    
    您还可以根据需要更新表:

    UPDATE your_table
       SET phone_number = '0'||phone_number
     WHERE LENGTH(phone_number) = 9
    ;
    

    如果您确信只需在长度为9的字符串上预加一个零就可以用于您的应用程序,那么一些简单的方法就可以了:

    SELECT CASE WHEN LENGTH(phone_number) = 9 THEN '0'||phone_number
                ELSE phone_number
            END AS phone_number
      FROM your_table
    ;
    
    您还可以根据需要更新表:

    UPDATE your_table
       SET phone_number = '0'||phone_number
     WHERE LENGTH(phone_number) = 9
    ;
    

    如果您确信只需在长度为9的字符串上预加一个零就可以用于您的应用程序,那么一些简单的方法就可以了:

    SELECT CASE WHEN LENGTH(phone_number) = 9 THEN '0'||phone_number
                ELSE phone_number
            END AS phone_number
      FROM your_table
    ;
    
    您还可以根据需要更新表:

    UPDATE your_table
       SET phone_number = '0'||phone_number
     WHERE LENGTH(phone_number) = 9
    ;
    

    更通用的解决方案是:

    select substr('0000000000'||'1234567', -10, 10) from table_name;
    
    上面的查询将始终返回10位数字,并将前导零添加到遗漏的数字中

    例如,上面的查询将返回:0001234567

    如需更新,请使用

    UPDATE TABLE_NAME SET PHONE_NO = substr('0000000000'|| PHONE_NO, -10, 10);
    

    更通用的解决方案是:

    select substr('0000000000'||'1234567', -10, 10) from table_name;
    
    上面的查询将始终返回10位数字,并将前导零添加到遗漏的数字中

    例如,上面的查询将返回:0001234567

    如需更新,请使用

    UPDATE TABLE_NAME SET PHONE_NO = substr('0000000000'|| PHONE_NO, -10, 10);
    

    更通用的解决方案是:

    select substr('0000000000'||'1234567', -10, 10) from table_name;
    
    上面的查询将始终返回10位数字,并将前导零添加到遗漏的数字中

    例如,上面的查询将返回:0001234567

    如需更新,请使用

    UPDATE TABLE_NAME SET PHONE_NO = substr('0000000000'|| PHONE_NO, -10, 10);
    

    更通用的解决方案是:

    select substr('0000000000'||'1234567', -10, 10) from table_name;
    
    上面的查询将始终返回10位数字,并将前导零添加到遗漏的数字中

    例如,上面的查询将返回:0001234567

    如需更新,请使用

    UPDATE TABLE_NAME SET PHONE_NO = substr('0000000000'|| PHONE_NO, -10, 10);
    

    列的数据类型是什么?这个问题是关于CSV文件为什么用MySQL和SQLite标记?这个列的数据类型是什么?这个问题是关于CSV文件为什么用MySQL和SQLite标记?这个列的数据类型是什么?这个问题是关于CSV文件为什么用MySQL和SQLite标记?问题是什么列的数据类型?这个问题是关于CSV文件的,为什么用MySQL和SQLite标记?