1、LIKE语句的用法
- 作用:LIKE语句用于搜索匹配字段中的指定内容
- 语法:
- LIKE运算符用于WHERE语句中
WHERE column LIKE pattern
WHERE column NOT LIKE pattern
- 在LIKE前加NOT表示与LIKE相反的意思,即选择column不包含pattern的数据记录
- 与通配符%一起使用,%表示通配pattern中未出现的内容,不加%表示精确匹配
- LIKE运算符用于WHERE语句中
eg:
- 查询所有 username 以 “小” 开头的记录
SELECT * FROM user WHERE username LIKE '小%'
- 查询所有username字段中任意位置包含a字符的记录
SELECT * FROM user WHERE username LIKE '%a%'
- 查询所有 username 以 “小” 开头的记录
LIKE大小写:
- LIKE默认不区分大小写,若要支持,可加入BINARY 操作符
WHERE username LIKE BINARY ......
- LIKE默认不区分大小写,若要支持,可加入BINARY 操作符
LIKE的效率较差,因此,当数据量较大时,尽量少使用LIKE运算符
2、统计数据行数:count()
- 作用:SELECT COUNT(column) FROM 语法用语从数据表中统计行数
- 语法:
SELECT COUNT(column) FROM tbname
- 用于统计某一字段的数据行数,不能有多个字段,但可以是(*)号
3、分页查询,即限定查询记录数 : LIMIT
- LIMIT关键字用于限定查询记录返回的最大数目
- 语法:
... LIMIT offset,rows
- offset : 表示偏移量(即指向数据记录的游标)
- rows : 表示查询限定返回的最大记录数
- 两个参数必须为整数
4、查询结果排序 : ORDER BY
- ORDER BY 关键字用于对查询结果进行排序
- 排序分为升序(ASC)、降序(DESC); 当不使用ORDER BY 指定排序方式时,默认为升序
- 语法:
SELECT column, ... FROM tb_name WHERE .... ORDER BY column1, column2 ..... DEAC(ASC)
- ORDER BY 后必须列出字段名,可以是多个字段
5、LEFT JOIN 关键字:
- LEFT JOIN 关键字会从左表那里返回所有的行,即使右表中没有匹配的行,常用于关联查询
语法:
SELECT column_names FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2.column_name
eg:
SELECT t1.id as 'a_id', ti.name as 'a_name, t2.id as 'u_id', t2.password FROM t_address t1 LEFT JOIN t_user t2 ON t_address.id=t_user.use_id
6、MySql的事务控制:
- 在适当的位置使用:
-con.setAutoCommit(false); //关闭自动提
-con.commit(); //手动提交
- 在catch块中回滚:
-con.rollback(); //发生错误时回滚