zoukankan      html  css  js  c++  java
  • mysql表复制和修改部分字段

     

    今天在工作中,需要造大量的加数据,1000多条数据如果都是手工输入的话,那么我今天不要干别的了,就造吧!

    当时手工操作重复的事情,对程序员来说,是一件很丢人的事情,所以就上网查了一下,需要用到两个知识点。1  表复制    2字段的部分替换

    表复制

     Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

          1.INSERT INTO SELECT语句

          语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

    现在我有一个表 id uid pid iid hour desc date 我要对这个表的数据*2

    这里desc是描述的意思,因为和关键字冲突,所以不进行选取  id是自增主键,不需要选取

     INSERT INTO record (uid,pid,iid,hour,date)

     SELECT uid,pid,iid,hour,date

     FROM record;

    Query OK, 1300 rows affected

    Records: 1300  Duplicates: 0  Warnings: 0

    成功了以后,同样一份数据*2 存放在表中,除了自增主键iddesc(描述字段,并非排序功能)为空

    然后我想将新增数据的date2016年的所有数据改成2015年的

    比如:2016-02-16   =2015-02-16

    UPDATE record set date=REPLACE(date,'2016','2015')

    WHERE id >1485;

    Query OK, 1300 rows affected

    Rows matched: 1300  Changed: 1300  Warnings: 0

    这样所有新增的数据就会变成2015-__-__;

    现在把   date=REPLACE(date,'2016','2015')  拎出来么么哒一遍

    date = REPLACE ( date, '2016', '2015')

    表中的目的字段 替换函数 源字段 源字符  需要转换成的字符

    再举个栗子

    如果我们要将字段A值中的包含的1,替换成2呢? 
    例如:a=2211,现在要替换成2222,就是把1换成2 
    SQl语句这么写: update table set a=REPLACE(a,'1','2');

  • 相关阅读:
    PAT 甲级 1115 Counting Nodes in a BST (30 分)
    PAT 甲级 1114 Family Property (25 分)
    PAT 甲级 1114 Family Property (25 分)
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
  • 原文地址:https://www.cnblogs.com/zhouqi666/p/6038210.html
Copyright © 2011-2022 走看看