【发布时间】:2017-06-02 21:11:27
【问题描述】:
我有 2 张桌子;第一个是user_in_event table
这里的角色可以是regular, waiting for ack or moderator
第二个是user table
这里的角色可以是regular or admin
我想从 user_in_event 表中获取角色,基于 event_id 并输出所有用户信息(除了用户角色)并以单个 JSON 输出
我已经尝试使用LEFT JOIN
$query = "SELECT user_in_event.role, user_in_event.user_id, user.name, user.email, user.birthday, user.phone_number, user.address, user.image
FROM user LEFT JOIN user_in_event
ON user_in_event.event_id = '".$event_id."'
LIMIT $num_of_rows";
$result = mysqli_query($con,$query)
or die(mysqli_error($con));
// print_r($query);
while ($row = mysqli_fetch_assoc($result)) {
$response[] = $row;
}
header('Content-Type:Application/json');
echo json_encode($response);
但我搞砸了数据
[
{
"role": "moderator",
"user_id": "2",
"name": "ofir",
"email": "ofir@ofr.com",
"birthday": "08/12/2016",
"phone_number": "123",
"address": "yoqneam",
"image": "http://imgur.com/a/KslOW"
},
{
"role": "waiting for ack",
"user_id": "21",
"name": "ofir",
"email": "ofir@ofr.com",
"birthday": "08/12/2016",
"phone_number": "123",
"address": "yoqneam",
"image": "http://imgur.com/a/KslOW"
}
]
PS:我还尝试进行 2 个不同的查询并将 JSON 和用户 array_merge_recursive 组合起来,但我得到了 2 个 subs 数组而不是一个
【问题讨论】:
-
这里出了什么问题?
-
@jyotimishra 我得到了 user_id 之后的一切都是一样的
-
能否请您向您展示带有一些虚拟数据的表结构,以便为您创建查询。
-
@jyotimishra 有指向表格的链接
-
@jyotimishra 还有,用户表中没有 event_id