我今天学习了数据库的多表连j接,分别有内连接和左外连接还有右外连接,这三个连接是最基本的连接。
1.内连接分为是三种:等值连接
是指表之间通过”等于”关系连接起来,产生一个临时表,然后对该临时表进行处理后生成最终结果。其查询结果中列出被连接表中的所有。
2、不等值连接:
是指表之间的连接关系不是“等于”,而是其它关系。这些运算符包括>、>=、<=、<、!>、!<和<>。
3、自然连接:
在等值连接中消除重复列就是自然连接。
外连接分为:
4.左外连接
(LEFT OUTER JOIN或LEFT JOIN):
在结果表中包含第一个表中满足条件的所有记录。
如果是在连接条件上匹配的记录,则第二个表返回相应值,否则第二个表返回空值。
5.右外连接
(RIGHT OUTER JOIN或RIGHT JOIN):
声明:此篇文档时来自于【狗刨学习网】社区-unity极致学院,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。
6.联合查询
UNION运算符可以将两个或两个以上上SELECT语句的查询结果集合合并成一个结果集合显示,即执行联合查询。
下面我们再c#中来运用一下数据库多表链接,代码如下:
//将用户表和订单表进行多表查询
ArrayList list2 = new ArrayList();
public ArrayList Show()
{
SqlConnection con = Link.Connect();
con.Open();
string sql = "select i.name ,i.number,u.name from users as u inner join indent as i on i.uid=u.id";
SqlCommand sc = new SqlCommand(sql, con);
SqlDataReader reader = sc.ExecuteReader();
while (reader.Read())
{
Indent i = new Indent();
i.Name = (string)reader.GetValue(0);
i.Number = (int)reader.GetValue(1);
Users u = new Users();
u.Name = (string)reader.GetValue(2);
list2.Add(i);
list2.Add(u);
}
Link.Close(con, reader);
return list2;
}