MySQL CRUD使用之小总结

总结一下最近碰到的一些关于MySQL CRUD方面的语句。

  • 在使用pymysqlexecutemany方法时,需要注意的几个问题:

    1、在写sql语句时,不管字段为什么类型,占位符统一使用%s,且不能加上引号。例如:

    sql="insert into tablename (id,name) values (%s,%s)"
    

    2、添加的数据的格式必须为list[tuple(),tuple(),tuple()]或者tuple(tuple(),tuple(),tuple())。例如:

    values=[(1,"zhangsan"),(2,"lisi")]或者values=((1,"zhangsan"),(2,"lisi"))
    

    3、最后,通过executemany插入cursor.executemany(sql,values)

  • mysql从两个表中找出相同记录的数据并把两个表中的数据都删除掉

    delete table1,table2 from table1 left join table2 on table1.id=table2.id where table1.id=1
    
  • mysql在一个表中新增一个字段(字段名后面增加一个字段名1):

    alter table 表名 add 字段名1 varchar(255) after 字段名;
    
  • mysql格式化某个字段的日期:

    select DATE_FORMAT(出生日期, "%Y-%m-%d") as 出生日期 from 表名 where id=1;
    
  • mysql替换一个表中某个字段存在的空格:

    update 表名 set content = replace(content, ' ', '');
    
  • mysql查询 24 小时内的sql语句:

    select * from 表名 where 创建时间 >=(NOW() - interval 24 hour);
    
  • mysql查询某一个数据库的某个表中的字段名

    select table_name, column_name, data_type, character_maximum_length, column_comment
    from information_schema.`COLUMNS` 
    where table_schema = '数据库名' 
      and table_name = '表名'
    order by ordinal_position;
    

      补充-->
      在涉及到需要批量更新数据比较困难时,可以先删除旧的数据,然后插入新的数据,这是一种思路。注意:

  • 在删除主表中的含有外键的记录时,需要先删除从表的这条外键所在记录,然后删除主表中的这条记录就OK了。
  • 而在插入新的记录时,应该先再主表中插入记录,然后在从表中插入记录就OK。

      后续碰到其他会陆续更新。

转载请备明出处:洪荒少男~

posted @ 2019-07-22 15:27  洪荒少男~  阅读(317)  评论(0编辑  收藏  举报