
一般情况下,我们在MySQL中使用ON。在联接中,我们在一组列中使用 ON。当两个表共享它们所连接的名称完全相同的列时,USING 非常有用。
打开示例。
创建我们的第一个表。
%ign%ignore_a_1%re_pre_1%创建我们的第二个表。
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) references PrimaryTableDemo(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)
现在让我们显示第一个表中的所有记录。
mysql> SELECT * from ForeignTableDemo;
这是输出。
+------+------+------+| Id | Name | FK |+------+------+------+| 1 | John | 1 || 2 | Bob | 2 |+------+------+------+2 rows in set (0.00 sec)
仅显示匹配行的直接联接查询如下所示。我们在这里使用了ON。
mysql> SELECT ForeignTableDemo.Id, ForeignTableDemo.Name, PrimaryTableDemo.Address - > from ForeignTableDemo - > join PrimaryTableDemo - > on ForeignTableDemo.FK = PrimaryTableDemo.FK;
以下是输出。
+------+------+---------+| Id | Name | Address |+------+------+---------+| 1 | John | US || 2 | Bob | UK |+------+------+---------+2 rows in set (0.14 sec)
使用示例。
下面是MySQL中USING的语法,显示FK = 1的记录。
mysql> select *from ForeignTableDemo join PrimaryTableDemo using(FK) where FK=1;
这是输出。
+------+------+------+---------+| FK | Id | Name | Address |+------+------+------+---------+| 1 | 1 | John | US |+------+------+------+---------+1 row in set (0.09 sec)
以上就是MySQL 开启与使用?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/117714.html
微信扫一扫
支付宝扫一扫