MySQL 从两个不同的表中获取 user_id 和密码的查询

Posted

技术标签:

【中文标题】MySQL 从两个不同的表中获取 user_id 和密码的查询【英文标题】:MySQL a query to get user_id and password from two different tables 【发布时间】:2021-12-29 09:53:17 【问题描述】: 教授(professeur_id、姓名、密码、邮箱) 学生(student_id、姓名、密码、邮箱)

如何编写查询以从两个表中获取 ID 和密码?

另外,我可以从两个表中创建一个包含 ID 和密码作为外键的登录表吗?

(我必须将教授 ID 和学生 ID 列更改为相同的名称吗?)

【问题讨论】:

您还可以创建一个 SQL 视图,其中包含两个表中的相关数据。 不要添加不相关的标签。如果这可以完全通过 servlet 或命令行应用程序解决(或破坏),那么可以肯定地说它与 Swing 无关。 【参考方案1】:

看这里关于“加入”:https://www.cloudways.com/blog/how-to-join-two-tables-mysql/

【讨论】:

虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。 不是join,是union select。【参考方案2】:

使用联合选择:

select
  p.professeur_id as id
  , p.name as name
  , p.password as password
  , p.mail as mail
  from Professeur p
union select
  s.student_id as id
  , s.name as name
  , s.password as password
  , s.mail as mail
  from Student s
  ;

请注意,至少字段professeur_id 和student_id必须有一个别名,因为它们的名称不同。但是给所有字段一个别名是一个好习惯。

如需了解更多信息(不仅限于 select 声明),请转至official MySQL documentation

【讨论】:

以上是关于MySQL 从两个不同的表中获取 user_id 和密码的查询的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 搜索不同的表并且只获取特定的 ID

优化查询以从不同的表中获取唯一(用户)记录

如何从两个不同的、不相关的表中获取最新的行,并将它们合并到一个结果集中?

使用 WHERE 或 JOIN 从不同的表中选择?

我想将两个不同的表行值插入到单个表中,

MySQL 常用的表关联:左连接右连接内连接全连接