La Monte
2014-11-26, 06:57 PM
1.在创建表的同时创建索引
CREATE TABLE material(id INT NOT NULL, name char(40) NOT NULL, resistance INT, INDEX index1(id,name), UNIQUE INDEX index2(name))
第一个索引,名为index1,由id和name两个字段组成。第二个索引只包含name,并指明name字段的值必须是唯一的。
2.插入数据,可以通过其他某个表中的数据填充新表以插入新数据
INSERT INTO foods(name,fat) SELECT food_name, fat_grams FROM recipes
3 。SELECT * FROM people ORDER BY name LIMIT 19,30 表示从第20条记录开始取出30条记录
4.mysql提供了基于扩展正则表达式的模糊匹配
SELECT TITLE FROM BOOK WHERE TITLES REGEXP 'Java'; 匹配titles中包含Java。 REGEXP '^java' 匹配以'java'开头的titles, REGEXP ’java$’匹配以java结尾的titles, 与REGEXP相对的是NOT REGEXP。
5.mysql事务处理
要在事务表上执行事务处理,首先要用set AUTOCOMMIT=0关闭自动提交功能,然后执行要在这个事务中执行的sql语句,最后用commit命令完成事务处理,要回滚使用rollback命令。如果在事务中遇到下面几个命令也会自动结束当前事务:
ALTER TABLE
BEGIN
CREATE INDEX
DROP DATABASE
DROP TABLE
LOCK TABLES
RENAME TABLE
TRUNCATE
UNLOCK TABLES
CREATE TABLE material(id INT NOT NULL, name char(40) NOT NULL, resistance INT, INDEX index1(id,name), UNIQUE INDEX index2(name))
第一个索引,名为index1,由id和name两个字段组成。第二个索引只包含name,并指明name字段的值必须是唯一的。
2.插入数据,可以通过其他某个表中的数据填充新表以插入新数据
INSERT INTO foods(name,fat) SELECT food_name, fat_grams FROM recipes
3 。SELECT * FROM people ORDER BY name LIMIT 19,30 表示从第20条记录开始取出30条记录
4.mysql提供了基于扩展正则表达式的模糊匹配
SELECT TITLE FROM BOOK WHERE TITLES REGEXP 'Java'; 匹配titles中包含Java。 REGEXP '^java' 匹配以'java'开头的titles, REGEXP ’java$’匹配以java结尾的titles, 与REGEXP相对的是NOT REGEXP。
5.mysql事务处理
要在事务表上执行事务处理,首先要用set AUTOCOMMIT=0关闭自动提交功能,然后执行要在这个事务中执行的sql语句,最后用commit命令完成事务处理,要回滚使用rollback命令。如果在事务中遇到下面几个命令也会自动结束当前事务:
ALTER TABLE
BEGIN
CREATE INDEX
DROP DATABASE
DROP TABLE
LOCK TABLES
RENAME TABLE
TRUNCATE
UNLOCK TABLES