您好,欢迎访问一九零五行业门户网

如何在MySQL中使用直连接?

mysql 中的直接联接的工作方式类似于内联接或联接。这意味着它只返回匹配的行。首先,我们需要了解mysql中的straight join。为此,我们需要创建两个表并将这两个表与外键约束关联起来。
这是第一个表
mysql> create table foreigntabledemo-> (-> id int,-> name varchar(100),-> fk int-> );query ok, 0 rows affected (0.47 sec)
这是第二个表 -
mysql> create table primarytabledemo-> (-> fk int,-> address varchar(100),-> primary key(fk)-> );query ok, 0 rows affected (0.47 sec)
之后,我们将添加约束 -
mysql> alter table foreigntabledemo add constraint fkconst foreign key(fk) referencesprimarytabledemo(fk);query ok, 0 rows affected (1.54 sec)records: 0 duplicates: 0 warnings: 0
现在将记录添加到第二个表中 -
mysql> insert into primarytabledemo values(1,'us');query ok, 1 row affected (0.10 sec)mysql> insert into primarytabledemo values(2,'uk');query ok, 1 row affected (0.14 sec)mysql> insert into primarytabledemo values(3,'unknown');query ok, 1 row affected (0.08 sec)
显示记录mysql> select * from primarytabledemo;
以下是输出 -
+----+---------+| fk | address |+----+---------+| 1 | us || 2 | uk || 3 | unknown |+----+---------+3 rows in set (0.00 sec)
现在,将记录添加到第一个表中
mysql> insert into foreigntabledemo values (1,'john',1);query ok, 1 row affected (0.20 sec)mysql> insert into foreigntabledemo values (2,'bob',2);query ok, 1 row affected (0.27 sec)
借助 select 语句显示所有记录 -
mysql> select * from foreigntabledemo;
以下是输出
+------+------+------+| id | name | fk |+------+------+------+| 1 | john | 1 || 2 | bob | 2 |+------+------+------+2 rows in set (0.00 sec)
直接连接的查询如下,仅显示匹配的行 -
mysql>select foreigntabledemo.id, foreigntabledemo.name, primarytabledemo.address-> from foreigntabledemo-> straight_join primarytabledemo-> on foreigntabledemo.fk=primarytabledemo.fk;
以下是输出 -
+------+------+---------+| id | name | address |+------+------+---------+| 1 | john | us || 2 | bob | uk |+------+------+---------+2 rows in set (0.00 sec)
以上就是如何在mysql中使用直连接?的详细内容。
其它类似信息

推荐信息