数据库
操作语句
7。外部
连接——交叉
查询 7.1查询
7.2等效连接
7.3加入
7.4左外连接
7.5更新操作
简介:
外部连接和自连接
内部连接(等效连接)只返回两个表中相等连接字段的行。
左联接(左连接)返回一个包含左表中所有记录和右表中的连接字段的记录。
右联接(右连接)返回一个包含右表中所有记录和左表中的连接字段的记录。
在指定链接字段及其对等关系的等价表达式时,返回true或false。当表达式返回true时,查询包含记录。
外部连接只能操作数据库中已经存在的数据。
7.5.2
程序代码
更新(ctarticle为左连接ctclass C对a.classid = c.classid)
设置标签=标签+,b.articleid = a.articleid,b.classid = a.classid,b.nclassid = a.nclassid
在a.classid = 23和a.nclassid = 0和TagID不为空
7.5.1
程序代码
更新(ctarticle为左连接(ctnclass C左连接ctclass为D = c.classid d.classid)a.nclassid = c.nclassid和a.classid = c.classid左连接cttag为B)在a.articleid = b.articleid设置标签= B ++ c.nclass,b.articleid = a.articleid,b.classid = a.classid b.nclassid = a.nclassid,哪里a.classid = 23和a.nclassid = 197;
7.5更新操作
74.5在左连接的数据筛选
程序代码
插入cttag(以上,classid,nclassid)选择a.articleid,a.classid,a.nclassid,a.classid,它已被用于第一时间。
用于
显示主表所有内容的语句
函数,将数据插入表中的数据,不带边。
主要
功能是:让数据冗余
在这个例子中,7.4.4.1的延续
程序代码
选择A、B、B、C、D *
从cttag D左连接((ctarticle为左连接,一个)。
7.4.4显示所有文中表的文章,并要求列在类别表
程序代码
选择A,B,C *(ctarticle左加入ctclass B)
有时,函数表中不包含表中数据中的各个类别,您可以用语法读取所有数据表。
/ /一个是文章的表,B和C为主要类别的子类别
7.4.3使用上面的例子,选择额外的数据和
空间 程序代码
插入cttag(以上,classid,nclassid,标签)
选择a.articleid,a.classid,a.nclassid,B ++ c.nclass
从(ctarticle为左连接(ctnclass C左连接ctclass,左))。
7.4.2连接N表添加数据到一个表,N = 4
程序代码
插入cttag(以上,classid,nclassid,标签)
选择a.articleid,a.classid,a.nclassid,B + c.nclass
从(ctarticle为左连接(ctnclass C左连接ctclass,左))。
解释
插入表2(第1栏,第2栏,第3栏,第4栏)
选择别名A。列1,别名A。列2,别名A。列3,别名d列4,加上别名C。列5。
(从表1别名左连接(表3表4中的左连接别名别名C别名d d等于2 bar d别名别名A))在列2等于2,而C列别名别名别名别名C = 3 bar条3)b b 1列别名别名中的左连接表2等于b列1,其中2=1和A别名别名a bar条=3=1。
7.4.1连接两个表添加数据到一张桌子
程序代码
插入cttag(以上,classid,nclassid)
选择a.articleid,a.classid,a.nclassid
从ctarticle为左连接cttag乙方对a.articleid = b.articleid;
解释
插入表2(第1栏,第2栏,第3栏)
选择别名A。列1,别名A。列2,别名A。列3。
在表1别名中,别名表A中的左连接表2别名b等于别名b。列1,其中别名a列4=1,别名a bar=5=1。1。
7.4。左连接
7.3.1
同步的两个表的数据
程序代码
更新ctarticle内加入cttag B a.articleid = b.articleid集b.classid = a.classid。
解释
更新表1别名,连接表2别名2,别名A。bar 1等于别名b。列1,设置别名B。bar 2更新为别名,A栏2,别名B。bar 3更新为别名A 3。
7.3加入
程序代码
选择A *,B * bunclass右加入ctclass B a.classid = b.classid
查询别名a、b表,只匹配b表的内容。
7.2.3添加数据到一个连接表
程序代码
插入cttag(标签,选择前1 b.tag时),a.articleid从ctarticle,从cttag,时,X;
7.2.2变量使用两
程序代码
插入bureply
选择B,a.classid,a.nclassid
从文章内加入回复乙方对a.articleid = b.articleid
其中classid = 50;
在实际应用中的变量7.2.1
程序代码
插入butag(标签时,classid,nclassid)
选择b.tag,a.articleid,a.classid,a.nclassid
从文章内加入标签为B a.articleid = b.articleid
其中classid = 24;
7.2向其他表添加数据
程序代码
插入butag(标签,以上)
选择b.tag,a.articleid
从文章内加入标签为B a.articleid = b.articleid
在a.articleid <>假;
解释
添加到接收表(第1栏,第2栏)
选择别名B第1列,以及别名A列2。
在表1中,表名为A表中的联接表2表名B。
别名a列c不等于NO
在实际应用中的可变部分
程序代码
选择b.tag,a.articleid,a.classid,a.nclassid
从文章内加入标签为B a.articleid = b.articleid
在a.classid = 24;
7.1查询
程序代码
选择b.tag,a.articleid
从文章内加入标签为B a.articleid = b.articleid
在a.articleid <>假;
解释
选择别名B列、别名A列。
从表1,别名A,别名表A中的联接表2别名B。
别名a列c不等于NO
注:没有必要
7。外部连接——交叉查询
提示:注意表中的同一列