往表中添加数据的命令:
mysql>insert into table_name (field1, filed2, ... fieldN)
-> values(value1, value2, ...valueN);
如果插入的是字符串类型,需要用引号括起来,单引号和双引号都可以。例如:
mysql>insert into test (field) values("xyb");
如果要同时插入多条数据,例如插入三条:
mysql>insert into test (field) values("xyb"), ("love"), ("Charlotte");
在表中查询的命令:
mysql>select field1, field2, ... fieldN from table_name1, table_name2 ...
-> [where condition1 [and [or]] condition2 ...]
-> [offset m] [limit n] [order by field1, [...fieldn] [desc]];
字段之间用逗号隔开,表之间用逗号隔开。offset指定偏移,也既是跳过最开始的m条记录;limit限制输出记录最多n条;where后面跟查询条件,多个查询条件之间用 and 或 or 连接;order by指定按某字段排序之后返回。
where常用操作符如下:
= | != | < | > | <= | >= |
---|
单纯用where和以上操作符查询字符串会忽略大小写。如果需要对大小写敏感,可以加上binary关键字。例如:
mysql>select field from table_name where binary field=‘xyb‘;
where条件需要模式匹配时使用like操作符。like操作符采用SQL模式匹配,此时”_”匹配任意单个字符,”%”匹配任意多个字符(包括0个)。在mysql中SQL模式匹配默认大小写敏感。
查找field字段以”b”开头:
select * from table_name where field like ‘b%‘;
查找field字段以”fy”结尾:
select * from table_name where field like ‘%fy‘;
查找field字段包含”w”:
select * from table_name where field like ‘%w%‘;
查找field字段正好5个字符:
select * from table_name where field like ‘_____‘;
关于rlike和扩展模式匹配内容参见第一条链接。
mysql查询返回值没有固定顺序(一般按照插入顺序)。如果需要按照某查询字段排序返回,在select语句最后加上order by 查询字段。排序的字段可以是多个,默认排序为升序,desc关键字表示降序排序。当对多个字段排序时,会按照顺序先对第一个字段排序,然后对每一组第一个字段相同记录集合再对第二个字段排序,依此类推。例如:
FirstName | LastName | YearOfBirth |
---|---|---|
Thomas | Alva Edison | 1847 |
Benjamin | Franklin | 1706 |
Thomas | More | 1478 |
Thomas | Jefferson | 1826 |
使用如下语句:
SELECT * FROM People ORDER BY FirstName DESC, YearOfBirth ASC
结果如下:
FirstName | LastName | YearOfBirth |
---|---|---|
Thomas | More | 1478 |
Thomas | Jefferson | 1826 |
Thomas | Alva Edison | 1847 |
Benjamin | Franklin | 1706 |
以上参考第二条链接sotack overflow的第二个答案。
修改更新表中数据的命令:
mysql>update table_name set field1=value1, field2=value2
-> [where condition, ...];
删除表中数据的命令:
mysq>delete from table_name
-> [where condition, ...];
如果不指定条件会删除整张表。
参考链接:
https://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html
http://stackoverflow.com/questions/2051162/sql-multiple-column-ordering