php - 使用 WHERE 选择多个表
问题描述
有人可以告诉我如何在查询中使用 WHERE 选择多个表吗?
$sql = "SELECT * FROM leerlingen, leraren WHERE voornaam= '$username' AND password= '$password'";
因为这个查询给出了错误
解决方案
SELECT table1.*,
table2.*
FROM table1
JOIN table2
ON table1.id = table2.table1_id
WHERE table1.field LIKE "Hello"
AND table2.field LIKE "World;
该查询应该满足您的要求:从两个在 WHERE 部分具有不同条件的不同表中选择所有内容。正如其他人所说,尝试始终使用显式 JOIN 语法,因为它更具可读性和不言自明。
由于您编写的代码并不清楚您是否这样做,我强烈建议您使用某种输入验证和转义来防止SQL 注入。
推荐阅读
- ios - 是否可以在不同的 Mac 机器上构建相同的 IOS 应用程序
- swift - 在 SwiftUI 中关闭选择器并将选择器选择重置为初始值
- apache-spark - 如何在pyspark中将嵌套的dict转换为数据框。?
- mysql - WP 经常性停机、错误 | (70007) 指定的超时已过期:AH01075:
- amazon-web-services - AWS lambda-如何让机器人使用 AWS lambda 函数向用户说出特定的答案?
- node.js - Sequelize:如何软删除来自 1 个用户的对话而不是另一个用户?
- angular - 角度单元测试点击方法似乎没有被点击
- ios - 为什么 [UIView animate] 的完成处理程序以错误的顺序调用?
- python - 无法在 127.0.0.1:6633 联系遥控器
- javascript - model.save() 返回一个无效的输出