我有一个问题。我是 MySQL 的新手。到目前为止,我只需要简单的查询,一切正常。但是,现在我有一个问题。我有两个表:
表格
关税
+----+---------------+ | id | ime_tarife | +----+---------------+ | 1 | Neka tarifa 1 | | 2 | Neka tarifa 2 | +----+---------------+
表
telefoni_dodatak
+----+--------------+-----------+-------+ | id | telefoni_id | tarifa_id | price | +----+--------------+-----------+-------+ | 1 | 35 | 1 | 650 | | 2 | 35 | 2 | 700 | +----+--------------+-----------+-------+
此表中的所有值都是整数。
我有这样的 URL www.example.com/phones/35/
其中数字 35 代表页面的 id(在第三个表中使用),它也被写为 telefoni_id
在表 telefoni_dodatak
中。
tarifa_id
列具有来自表 tarife
的 ID 号。
我必须根据 url www.example.com/phones/35/
中的 id 在 HTML 中获得这样的输出:
Neka tarifa 1 | 650
-------------------
Neka tarifa 2 | 700
我试过这个查询:
SELECT *, (SELECT ime_tarife FROM tarife WHERE id = (SELECT tarifa_id FROM telefoni_dodatak WHERE telefoni_id = :id)) AS nazivTarife FROM telefoni_dodatak WHERE telefoni_id = :id
但这行不通。 (nazivTarife
未定义。应该是?)
我正在使用 PDO,:id
是来自 url 的数字 35。
附言此查询 SELECT * FROM telefoni_dodatak WHERE telefoni_id = :id
工作正常,我得到的价格都是 650 和 700。
在此先感谢您的帮助!
最佳答案
你为什么不加入呢?
SELECT a.ime_tarife, b.price
FROM tarife a
INNER JOIN telefoni_dodatak b
ON a.id = b.tarifa_id
WHERE b.telefoni_id = 35
关于MySQL 根据来自 URL 的 ID 从两个表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18025142/