Cantuman terus dalam kerja MySQL serupa dengan cantuman atau cantuman dalaman. Ini bermakna ia hanya kembali Garisan yang sepadan. Pertama, kita perlu memahami Straight join dalam MySQL. Untuk ini kita perlukan Cipta dua jadual dan kaitkan dengan kekangan kunci asing.
Ini adalah jadual pertama
mysql> CREATE table ForeignTableDemo -> ( -> Id int, -> Name varchar(100), -> FK int -> ); Query OK, 0 rows affected (0.47 sec)
Ini adalah jadual kedua -
mysql> CREATE table PrimaryTableDemo -> ( -> FK int, -> Address varchar(100), -> primary key(FK) -> ); Query OK, 0 rows affected (0.47 sec)
Selepas itu kita akan menambah kekangan -
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
Sekarang tambah rekod ke jadual kedua -
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)
output -
mysql> SELECT * from PrimaryTableDemo;
Sekarang, tambahkan rekod pada jadual pertama
+----+---------+ | FK | Address | +----+---------+ | 1 | US | | 2 | UK | | 3 | Unknown | +----+---------+ 3 rows in set (0.00 sec)
Paparkan semua rekod dengan bantuan SELECT statement -
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)
Berikut adalah output
mysql> SELECT * from ForeignTableDemo;
Pertanyaan untuk direct join adalah seperti di bawah dan paparan sahaja baris yang sepadan -
+------+------+------+ | Id | Name | FK | +------+------+------+ | 1 | John | 1 | | 2 | Bob | 2 | +------+------+------+ 2 rows in set (0.00 sec)
Berikut ialah output -
mysql>SELECT ForeignTableDemo.Id, ForeignTableDemo.Name, PrimaryTableDemo.Address -> from ForeignTableDemo -> Straight_join PrimaryTableDemo -> on ForeignTableDemo.FK=PrimaryTableDemo.FK;
Atas ialah kandungan terperinci Bagaimana untuk menggunakan sambungan langsung dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!