仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1241|回复: 8
打印 上一主题 下一主题

[学习教程] MYSQL网站制作之SQL查询语句优化的一点

[复制链接]
飘灵儿 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:50:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
MySQL数据库归MySQLAB公司所有,但是这个软件是开源的,有一个MySQL学习教程可以免费下载。稍俱常识的新入门者都可以轻松实现在一个常见硬件上安装和配置MySQL。优化|语句
(1)INSERT[INTO]BSELECTid,field1,field2FROMAWHERENOTEXISTS(SELECTidFROMBWHEREid=[A.]id)

(2)INSERT[INTO]BSELECT*FROMAWHEREidNOTIN(SELECTidFROMB)

---------------------------------------------------------------------------

这两句,都是将A表中存在,但B表中不存在的数据,拔出到B表中,联系关系对照字段为id.
但这两句的实行效力,倒是无数量级的不同.

结论有两点:
只管用EXISTS和NOTEXISTS取代IN和NOTIN不要偷懒,只管不必SELECT*FROM....,而要写字段名SELECTfield1,field2,....对于IT经理来说,令他们喜欢的MySQL的简单性还有另一方面。MySQL可以运行的更快速。某些人或许会说MySQL缺少了一些人们想要的功能。
莫相离 该用户已被删除
沙发
发表于 2015-1-20 05:40:24 | 只看该作者
可以动态传入参数,省却了动态SQL的拼写。
透明 该用户已被删除
板凳
发表于 2015-1-28 19:17:24 | 只看该作者
备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。
老尸 该用户已被删除
地板
发表于 2015-2-5 22:35:57 | 只看该作者
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
爱飞 该用户已被删除
5#
发表于 2015-2-14 00:08:15 | 只看该作者
每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。
乐观 该用户已被删除
6#
发表于 2015-3-4 03:20:10 | 只看该作者
连做梦都在想页面结构是怎么样的,绝非虚言
活着的死人 该用户已被删除
7#
发表于 2015-3-11 15:47:41 | 只看该作者
sqlserver的痛苦之处在于有用文档的匮乏,很多只是表明的东西
简单生活 该用户已被删除
8#
发表于 2015-3-19 01:34:32 | 只看该作者
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
小妖女 该用户已被删除
9#
发表于 2015-3-27 02:11:24 | 只看该作者
入门没那么困难,精通没那么容易
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 20:36

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表