私は2つの単純なテーブルを持っています。
mysql> select * from filesshare;
+----+--------+--------+-------+
| id | userId | fileId | owner |
+----+--------+--------+-------+
| 1 | 2 | 1 | 1 |
| 2 | 3 | 1 | 1 |
| 3 | 4 | 2 | 1 |
| 4 | 5 | 2 | 1 |
+----+--------+--------+-------+
4 rows in set (0.00 sec)
mysql> select * from filesinfo;
+----+-----------------+-----------------------------------+
| id | name | url |
+----+-----------------+-----------------------------------+
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
| 2 | dwnld_btn_1.png | C:\shareapp\admin\dwnld_btn_1.png |
+----+-----------------+-----------------------------------+
2 rows in set (0.01 sec)
i は、入力として 2 つの値を持ちます。1) ユーザー ID 2) 所有者
ここで、userId=3 および owner=1 とします。ここで、ファイル共有テーブルの指定された値を持つすべての行を一致させたいと思います。この場合、2 行目は "2 | 3 | 1 | 1" で、列 3 の値は 1 です。次に、その値を使用して、filesinfo テーブルからデータを取得します。この場合、filesinfo テーブルの最初の行が出力になります。このような:
+----+-----------------+-----------------------------------+
| id | name | url |
+----+-----------------+-----------------------------------+
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
+----+-----------------+-----------------------------------+
休止状態を使用して結合を使用することは可能ですか?簡単な例は私にとってキックスタートになる可能性があります.
私はこれを試しました
mysql> Select fileid,name,url from filesshare fs,filesinfo fi where fs.fileid=fi
.id;
+--------+-----------------+-----------------------------------+
| fileid | name | url |
+--------+-----------------+-----------------------------------+
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
| 1 | dwnld_btn.png | C:\shareapp\admin\dwnld_btn.png |
| 2 | dwnld_btn_1.png | C:\shareapp\admin\dwnld_btn_1.png |
| 2 | dwnld_btn_1.png | C:\shareapp\admin\dwnld_btn_1.png |
| 2 | dwnld_btn_1.png | C:\shareapp\admin\dwnld_btn_1.png |
| 2 | dwnld_btn_1.png | C:\shareapp\admin\dwnld_btn_1.png |
+--------+-----------------+-----------------------------------+
感謝と敬意