0

我认为 SQL 可能没有这么先进 - 或者它可能是 PHP + MySQL 的限制,但请考虑这种情况:

我有一个用户表和一个配置文件表。

我想通过他们的 ID 获取用户。用户表具有对配置文件表的外键引用。我能否以某种方式加入表,以便响应会产生这样的对象:(注意:使用足够的 PHP 这是可行的,但我想将其保留为单个 MySQL 查询)

user_id: 1
username: foo
profile => first_name: Foo
           last_name: Bar
           picture: foo.jpg
email: foo@example.com

这可以在 C# 中使用 LINQ,我只是想知道是否有 PHP 的等价物。

4

1 回答 1

-1

我认为您在这里需要做的是一个简单的 JOIN。

SELECT users.*, profiles.*
FROM `users`
LEFT JOIN profiles
ON users.id = profiles.user_id
WHERE users.id = '$user_id_var'
LIMIT 1;

这会将配置文件数据附加到您的用户,但不需要配置文件数据返回肯定的结果。

您需要小心考虑冲突键,但此查询应该让您走上正确的道路。

于 2013-04-02T07:18:03.963 回答