以两种方式连接数据库表

我因创建一个良好的查询而陷入困境,并从2个表中获取数据。 所以我学到了一些关于JOINS的知识,但是我需要帮助。

发布表

+---+------------+-------+-----------------------------+
|ID |productname |type   |guid                         |
|391|test product|product|                             |
|457|            |image  |https:www.mysite.com/test.png|
+---+------------+-------+-----------------------------+

元表

+-------+------+--------+---------+
|postid |metaid|metakey |metavalue|
|391    |301   |location|RT34     |
|391    |302   |price   |11.50    |
|391    |303   |stock   |6        |
|391    |304   |image   |457      |
+-------+------+--------+---------+

到目前为止我的代码

SELECT * 
FROM poststable 
JOIN metatable ON poststable.id = metatable.postid 
WHERE post_type='product' and post_title='test product'

如果我在结果的同时,poststable中的所有内容都重复了4次。

我想要的是poststable中的产品名称和图像guid。 并且位置价格和库存来自于metatable。

如何使用一个或多个查询来执行此操作? 到表通过id-> postid连接。 对于图像,您需要metatable中的metvalue,该值具有posttable的ID。