MySQL增删改查(CURD)操作小细节

来源:互联网 发布:知乎学堂错题本 编辑:程序博客网 时间:2024/05/16 10:28

插入(create)

1.INSERT INTO table_name VALUES() 和 INSERT INTO table_name(‘字段1’,’字段2’) VALUES()的区别

这样做本身是没有什么区别,但是在项目的使用的时候,在某些情况下需要新增或者删除表中的字段
这时候采用前一种语句要更新项目中的所有语句
而后面一种只需要有关字段的这部分代码中增加或者去年这个字段就可以了

读取(Retrieve)

1.超过两个表的链接查询(一张表数据量大,另一张数据量小)
当然,不用链接查询是最快的,链接的越多越慢
但是是链接查询的情况下,inner join不管是大表在前还是小表在前,性能没有区别,因为mysql会自动将行数少的表作为驱动表
left join 的情况下,尽量将的小的数据表放在前面,保证用小的结果集驱动大的结果集
其次,在join关联的字段上加索引,这点很关键

更新(Update)

1.limit 1
在操作mysql的时候,往往修改和删除时是针对一条记录的,这样,我们指定了limit 1,就会有两个好处:
一是不会做无用的查询,因为当找到这条记录后就开始修改或者删除,执行完毕就是操作完毕,否则会根据条件查询全表,这样会在找到该条记录后继续搜索,增加无用的查询
二是相对安全,因为这样影响的记录控制在最少,防止出现部分操作导致全表更新或者删除

原创粉丝点击