三个表与相同的工作表

时间:2017-06-09 09:14:47

标签: php sql

我有三张表格具有相同的工作表

[ id  -  title  -  context ]

我试图像他们一样建立他们之间的关系

$query = "SELECT db.title, db.context FROM table1 db, table2 db, table3 db WHERE id = :id";

但我一直收到此错误

Not unique table/alias: 'db'

有没有办法在所有具有相同别名的表之间进行关联?

1 个答案:

答案 0 :(得分:0)

你不能在diffente表中分配相同的别名

$query = "SELECT db1.title, db1.context 
      FROM table1 db1, 
      table2 db2, 
      table3 db3 WHERE id = :id";

但是为了连接表之间的行,可能需要union all(或union)

  SELECT db.title, db.context 
  FROM table1 db
  where db.id = :id
  UNION ALL 
  SELECT db.title, db.context 
  FROM table2 db
  where db.id = :id
  UNION ALL 
  SELECT db.title, db.context 
  FROM table3 db
  where db.id = :id