赛迪网 > IT技术 数据库 > MySQL
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

MySQL中值得我们注意的几个"SQL"语句

发布时间:2008.01.28 04:57     来源:赛迪网    作者:Linxiner

◆1.从一个表向另一个同样结构的表插入批量的数据

insert into table1 (select * from table2 )

◆2.使用sql语句插入大量语句可以如下方式进行插入.一次提交即可.

insert into table1 values
(1,'a'),
(2,'b'),
(3,'a'),
(4,'b'),
...............

◆3.mysql 取得下一个自动增长的id .取得这个数据是连接独立的.也就是mysql会自动维护没一个链接应该拿到的最大id.也就是说,有两个链接同时插入进去这个表各一条记录,则mysql会自动返回相同的最后id.

SELECT LAST_INSERT_ID() from createuserid limit 0,1

◆4.返回第一个非空的字符串.如果字段columnname字段中的数据为null,则会返回aaa值.

COALESCE(columnname,'aaa')

此方法相当与sqlserver中的 isnull(columnname,'default') 返回第一个非空的字符串.

◆5.修复表.如果mysql的表出现灰,不能被读取,并且表的linux用户组也都正确的情况下.使用如下命令修复表.

repair table tablename ;

◆6. 如果字段中的时间为long类型的毫秒数. 使用select FROM_UNIXTIME(875996580) 将之转换为日期类型. 需要注意:

长度超过一定位数后,需要截取前面的几位才可以.否则不能正确转换.

◆7. 日期函数 adddate .

参数说明

函数是对日期进行计算的. 第一个参数是字段,第二个参数是间隔的意思,为关键字. 第三个参数是要累加多少的,后面的参数是累加的单位。

select adddate(regdate,interval 0 day) 
from tablename desc limit 0,100

◆8.关于子select语句.一定要注意子语句的对记录范围的选取.

例如:

select * from table1 where id in (select id from table2)

如果要添加条件,一定要在子句中加入where. (责任编辑:卢兆林)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 工信部“三定”公布 总编制731名设24司局
· 北京发电子商务监管意见 营利性网店须办照
· 直播 08中国城市信息化高峰论坛 案例点评
· 烽火网络校园解决方案 移民安置信息管理系统
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统