gpt4 book ai didi

mysql 查询只从我的数据库返回一个结果

转载 作者:行者123 更新时间:2023-11-29 00:28:20 25 4
gpt4 key购买 nike

我的数据库中有 2 个表。表用户和表配置文件。

users(user_id, surname, email)
profile(profile_id, country, user_id)

表profile中的user_id,是FK(来自users表)。我有以下查询,以便从我的数据库中选择来自国家“USA”的所有姓氏“smith”。这是我的查询:

SELECT u.name, 
u.surname,
u.email,
u.user_id,
p.user_id
FROM users u
INNER JOIN profile p ON p.country = 'USA'
WHERE u.surname = 'smith' AND u.user_id = p.user_id

此查询工作正常,但问题是仅返回 1 个结果,而不是我数据库中的所有结果(来自美国的姓氏为 smith 的人)。知道哪里可能出错以及如何改正吗?

最佳答案

您应该将 u.user_id = p.user_id 条件与 ON 条件 放在一起,因为您要在“user_id”字段上应用 JOIN。并且 where 子句 应该有剩余的条件。

SELECT u.name, 
u.surname,
u.email,
u.user_id,
p.user_id
FROM users u
INNER JOIN profile p ON u.user_id = p.user_id
WHERE u.surname = 'smith' And p.country = 'USA'

您可以阅读有关 INNER JOINS 的信息

关于mysql 查询只从我的数据库返回一个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17864102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com