大家好,这是我的 SQL 查询:
SELECT *
FROM path JOIN (
SELECT * FROM invoice WHERE client_Id='$_SESSION[user]'
) ON INVOICE.path_Id=PATH.Id
我想在第一个表中加入两个表必须有client_Id=$_SESSION[user]
。这两个表必须在 上连接path_Id
。请帮助我以正确的方式编写此查询。谢谢
试试这个查询
SELECT *
FROM `PATH` JOIN `INVOICE`
ON `INVOICE`.`path_Id`=`PATH`.`Id`
WHERE `INVOICE`.`client_Id`='$_SESSION[user]'
那行代码有很多错误:
Saintize 用户输入。通过将 $_SESSION 变量直接插入 SQL 查询,您将引入 SQL 注入漏洞以及 XSS 和 CSRF 漏洞。如果有机会,人们可以并且会对您的应用程序做一些讨厌的事情。
永远不要选择比您需要的更多的数据。您真的需要两个表中的所有列吗?
为什么选择两个?ASELECT * FROM Path p JOIN Invoice i ON i.path_id = p.id WHERE i.client_id = 1 LIMIT 1
将完成这项工作。