考虑下面的例子,
数据库中的 3 个表“名字、姓氏和年龄” 我有所有的名字和姓氏,我需要编写一个查询来显示与我提供的数据关联的年龄。
例如:
First_Name | Last_Name | Age
-----------------------------
Mark | Thomas | 23
Vince | Erickson | 29
Peter | Charlton | 36
我需要一个可以提供名字和姓氏的查询,它会显示所提供数据的结果,包括他们的年龄。
类似于,
SELECT Age
FROM Users_DB
WHERE First_Name = (Mark, Vince, Peter)
AND Last_Name = (Thomas, Eickson, Charlton)
因为我有 200 个用户的列表(名字和姓氏),并且我需要从包含 5000 多个用户的数据库中获取他们的年龄。我只需要显示这 200 个用户的年龄。
提前致谢
最佳答案
您的查询的正确语法是:
SELECT Age
FROM Users_DB
WHERE First_Name IN ('Mark', 'Vince', 'Peter')
AND Last_Name IN ('Thomas', 'Erickson', 'Charlton');
但我不认为这是您真正想要的,因为它还会选择名为 Mark Thomas 或 Mark Erickson 或 Mark Charlton 的人。
所以,我认为你想要在这里做的是:
SELECT *
FROM Users_DB
WHERE (First_Name = 'Mark' AND Last_Name = 'Thomas')
OR (First_Name = 'Vince' AND Last_Name = 'Erickson')
OR (First_Name = 'Peter' AND Last_Name = 'Charlton');
关于mysql - 显示 SQL DB 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23269085/