内连接
语法规则:select *|字段列表 from 左表 inner join 右表 on 左表.字段 = 右表.字段;
外连接
1、左外连接:
语法规则:select *|字段列表 from 左表 left outer join 右表 on 左表.字段 = 右表.字段;
2、右外连接:
语法规则:select *|字段列表 from 左表 right outer join 右表 on 左表.字段 = 右表.字段;
自然连接
1、自然内连接
语法:左表 natural inner join右表
2、自然外连接
语法:左表 natural left|right join 右表
子查询(标量子查询)
标量子查询:select 字段列表(函数) from 数据表;
列子查询:也就是返回单列的子查询
语法:select 字段 from 数据表;
行子查询:返回一行的子查询。
语法形式:
select *|字段列表 from 表名 where(字段1,字段2……)=(行子查询结果)
表子查询:select *|字段列表 from 子查询结果 as 别名 where子句……
exists子查询
exists主要是用来做判断的,返回的结果是一个布尔值!
应用场景:
注册用户的时候,必须要保证用户名没有被注册过,此时可以先查询一下用户的用户名是否存在!
语法形式:select exists(select * from 表名 where ...)
PHP操作MySQL
第一步:建立连接认证
$link = mysql_connect("localhost:3306","root","password");
第二步:发送操作指令
$sql = "set names utf8";
$result = mysql_query($sql);
第三步:返回处理结果
var_dump($result);
第四步:断开连接
mysql_close($link);
PHP提取资源结果集
PHP提取资源结果集基本上都是使用mysql_fetch系列函数来实现的!
语法形式为:mysql_fetch_array(资源结果集)
错误调试函数
mysql_errno():获取错误的编号!
mysql_error():获取错误的信息!
封装数据库连接文件
PHP实现增删改查
插入数据函数:mysql_insert_id()
删除和更新数据
使用函数:mysql_affected_rows()