MySQL 查询语句(1)
来源:互联网 发布:plc编程软件怎么下载 编辑:程序博客网 时间:2024/05/29 11:56
一:创建数据库
1:CREATE DATABASE test; //创建数据库test2:SHOW DATABASES; //查看目前数据库中可用的数据库,默认会有系统数据库3:USE test; //将test设置为目前操作的数据库4:SHOW TABLES; //显示一个数据库中的所有表5:SHOW COLUMNS FROM test.table //显示test数据库中一个表的详细信息
二:SELECT查询和排序
1:SELECT col FROM test.table; //将test.table中的col列选择出来2:SELECT col,col1 FROM test.table; //将test.table中col,col1列选择出来3:SELECT * FROM test.table; //将test.table中所有列选择出来4:SELECT DISTINCT col FROM test.table; //将test.table中col列选择出来,并且剔除重复。 SELECT DISTINCT col,col1 FROM test.table; //需要注意,会将col和col1中各自不同的剔除,去除重复时以不同的多的为主。
三:限制 LIMIT
5: SELECT col FROM test.table LIMIT 5; //返回test.table的col列,返回不多于5行 SELECT col FROM test.table LIMIT 5,5; //从第5行开始,往后数5行,注意,MySQL是有0行这个概念的
四:排序 ORDER BY
6: SELECT col FROM test.table ORDER BY col; //从test.table中选择col列,并且按照col列排序。 SELECT col,col1 FROM test.table ORDER BY col,col1; //按照col和col1列排序 SELECT col FROM test.table ORDER BY col DESC; //DESC指定按照 逆序,如果想对多个列采用,那么必须同时对每一列指定DESC //ORDER BY 和LIMIT共同使用时,注意将LIMIT放在ORDER BY后面。
五:选择 WHERE
7: SELECT col FROM test.table WHERE col=5; //从test.table中选出col列值为5的元组。 //WHRER和ORDER BY 共同使用时,注意将ORDER BY放到WHERE后面。 //WHERE 字句的操作符: = 等于 <> 不等于 != 不等于 < 小于 <= 小于等于 > 大于 >= 大于等于 BETWEEN A AND B A和B范围之间的 SELECT col FROM test.table WHERE col <> 5; //col的值不等于5的,可以直接用!= SELECT col FROM test.table WHERE col BETWEEN 5 AND 10; //col的值在5或者10的。 SELECT col FROM test.table WHERE col1 IS NULL; //默认检测col1中是否有空值,比如有的用户的邮箱没有填。
六:数据过滤 AND
8: SELECT col,col1 FROM test.table WHERE col=1 AND col1=2; //选出col=1并且col1=2的元组 SELECT col,col1 FROM test.table WHERE col=1 OR col1=2; //选出col=1或者col1=2的元组 SELECT col,col1 FROM test.table WHERE (col=1 OR col1=2) AND col3 = 5; //选出col=1或者col1=2并且col3=5的所有元组 //注意:默认情况下AND的优先级比OR高。 SELECT col FROM test.table WHERE col IN(3,5,...); //IN实现和OR一样的功能,将()中的元素一一对应过去 SELECT col FROM test.table WHERE col NOT IN(3,5); //除过col=3,4,5,的情况,显示其余部分
七:简单匹配和正则。
9: SELECT col FROM test.table WHERE col LIKE 'Jet%'; //%表示任意,'Jet%'表示所有以Jet开头的。10: SELECT col FROM test.table WHERE col LIKE '_ ton'; //_表示一个,'_ ton'表示所有 ton前面还有一个字符 的串。 //正常情况下我们一般将通配符放在搜索模式的最后,因为通配非常浪费时间,我们一般给尽可能小的数据量通配。//正则表达式: REGEXP 处理简单通配符无法处理的情况//与通配的不同指出在于,通配时候,除非列中的数据完全和我们指定的串相等时才会查找出来结果,即使数据中包含我们查找的串也不行,举个例子//数据是 'hello' ,WHERE col LIKE 'hell' 是不会将'hello'返回的,但是我们用REGEXP就可以//这点非常重要,即REGEXP会匹配我们数据的字串。11: SELECT prod_name FROM test.table WHERE col REGEXP '.Jet'; // .表示匹配任意一个字符,这点与通配符不同12:SELECT prod_name FROM test.table WHERE col REGEXP 1000|2000; // col 等于1000或者2000,还可以多增加几个OR13: SELECT prod_name FROM test.table WHERE col REGEXP '[123] Ton'; //相当于匹配 1 Ton|2 Ton|3 Ton; SELECT prod_name FROM test.table WHERE col REGEXP '[1-3] Ton'; //和上面的语句是同一个作用,简写。 SELECT prod_name FROM test.table WHERE col REGEXP '1|2|3 Ton'; //与上面的不同,相当于 1 | 2 | 3 Ton; SELECT prod_name FROM test.table WHERE col REGEXP '[^123] Ton'; //除过123之外的.Ton,注意^是在[]里面的。 //转义字符 MySQL中用 \\X x表示我们要转义的字符 第一个\MySQL自己解释,第二个\正则表达式库解释 SELECT prod_name FROM test.table WHERE col REGEXP '\\.'; //找出带符号.的。 //匹配字符 SELECT prod_name FROM test.table WHERE col REGEXP '\\([0-9] sticks?\\)'; // \\( 转义前括号 [0-9]匹配0-9 ?匹配一个字符,\\)匹配后括号。 //^作为定位符 表示开始 SELECT prod_name FROM test.table WHERE col REGEXP '^[0-9]\\.'; //表示以数字或者.开头的串。 //REGEXP 是想和 LIKE 一样的功能 SELECT prod_name FROM test.table WHERE col REGEXP '1000' SELECT prod_name FROM test.table WHERE col REGEXP '^1000$' //将每一项都按照全部匹配来做,和上面一样.
0 0
- MySQL 查询语句(1)
- 详解MySQL查询语句执行过程1
- MySQL查询表格内容基本语句1
- 一条mysql查询语句
- mysql随机查询语句
- mysql 语句优化查询
- MySQL查询语句
- MySQL查询语句
- MYSQL查询语句全集
- MYSQL常用查询语句
- mysql的查询语句
- mysql查询语句优化
- mysql查询语句
- mysql 语句 批量查询
- mysql语句查询基础
- mysql查询替换语句
- mysql查询语句
- mysql 查询语句
- 利用msword库,实现大量文件的excel统计,word文档的控制输出
- jquery学习 FileUpload
- Vultr手动搭建shadowsocks, ipsec/StrongSwan及优化(附ipsec/ikev1服务器无响应的解决)
- Tomcat——配置虚拟主机
- UIImageView的ContentMode属性
- MySQL 查询语句(1)
- android与linux的关系及代码获取
- cpu利用率和cpu 队列
- Mapped Statements collection does not contain value for
- Android初探之QQ登录界面
- 关于微信公众号jsapi支付传值的问题
- Quartz 入门简单事例(备忘)
- 字符编码笔记:ASCII,Unicode和UTF-8
- 创业公司必备的5款团队协作工具