多个表上的MYSQLI SQL查询失败

多个表上的MYSQLI SQL查询失败,mysql,sql,Mysql,Sql,我对SQL非常陌生,我需要从不同的表中检索一些属性,但是。我通过在用户名称下搜索用户的图像和详细信息 例如: SELECT * FROM table1 WHERE name LIKE '%tim%' AND last_name '%smith%' 我的结果中需要以下属性: 我需要表1中的所有细节 表2中的帐户id和图像 表4中的路径 我试过了 SELECT table1.id table1.name table1.last_name table 2.account_id table4.path

我对SQL非常陌生,我需要从不同的表中检索一些属性,但是。我通过在用户名称下搜索用户的图像和详细信息

例如:

SELECT * FROM table1 WHERE name LIKE '%tim%' AND last_name '%smith%'
我的结果中需要以下属性:

我需要表1中的所有细节

表2中的帐户id和图像

表4中的路径

我试过了

SELECT table1.id table1.name table1.last_name table 2.account_id table4.path FROM table1 table 2 table4 WHERE table4.image_id = table 2.image AND table1.first_name LIKE '%tim%' AND table1.last_name LIKE '%smith%'
我正在考虑将其拆分为多个查询以解决此问题,但是我确信这可以在单个查询下完成,我只是不确定如何构造它,我已经尝试了很多次,但所有查询都在phpmyadmin中失败

希望有人能给我指出正确的方向?下面是我的表格示例,提前谢谢

table1
------------
id (pk)
name
last_name

table 2
--------------
account id (pk)
id (fk)
image (holds image id from table 4)

table 3
-----------------
account id (fk)
image id (fk)
date

table 4
--------------------
image id (pk)
path
date

因此,在
表1
表2
之间以及
表2
表4
之间有
内部联接。在MySQL中,
JOIN
隐式地表示
内部连接

SELECT
  table1.id,
  table1.name,
  table1.last_name,
  table2.account_id,
  table4.path
FROM
  table1
  JOIN table2 ON table1.id = table2.id
  JOIN table4 ON table2.image = table4.image_id 
WHERE table1.name LIKE '%tim%' AND table1.last_name LIKE '%smith%'

Edit:忘记添加原始的
WHERE
子句。)

因此在
表1
表2
之间以及
表2
表4
之间有
内部连接。在MySQL中,
JOIN
隐式地表示
内部连接

SELECT
  table1.id,
  table1.name,
  table1.last_name,
  table2.account_id,
  table4.path
FROM
  table1
  JOIN table2 ON table1.id = table2.id
  JOIN table4 ON table2.image = table4.image_id 
WHERE table1.name LIKE '%tim%' AND table1.last_name LIKE '%smith%'
Edit:忘记添加原始的
WHERE
子句。)

尝试以下操作:

SELECT t1.*, t2.account_id, t4.path
  FROM table1 t1
       INNER JOIN table2 t2 ON t2.id = t1.id
       INNER JOIN table4 t4 ON t4.image_id = t2.image
试试这个:

SELECT t1.*, t2.account_id, t4.path
  FROM table1 t1
       INNER JOIN table2 t2 ON t2.id = t1.id
       INNER JOIN table4 t4 ON t4.image_id = t2.image

感谢AlejoBrz,但是我不得不删除t1,因为phpmyadmin没有看到表,替换它们,查询工作感谢Hanks AlejoBrz,但是我不得不删除t1,因为phpmyadmin没有看到表,替换它们,查询工作感谢