假设我有两个表,
用户(id,姓名,性别)
posts(id, user_id(foreign_key from users), body, date)
我需要查询一个帖子,结果应该如下所示
[
"id": 1,
"body": "Some post body",
"date": "24-10-2015"
"user": [
"id": 23,
"name": "FirstName LastName",
"gender": "male"
]
]
我试过了,它给出了两个表的所有属性。但是我需要 users
表中的属性作为数组。我该怎么做?
SELECT *
FROM `posts`
LEFT
JOIN `users`
ON `posts`.`user_id` = `users`.`id`
最佳答案
试过了。 http://sqlfiddle.com/#!9/a907b/21
您可以进一步格式化。
SELECT CONCAT('[\n "id": ',POSTS.ID,', \n "body": "'
,BODY,'",\n "date": "' ,DATE,'"\n "user": [\n "id": '
,USERS.ID,',\n "name": "', NAME,'",\n "gender": "'
,gender,'"\n ]\n ]')
FROM USERS
LEFT JOIN POSTS ON users.id=posts.user_id
要在 sqlfiddle 中查看,请使用 Run SQL
按钮上的下拉菜单并选择 plaintext output
关于Mysql - 如何在左连接中为整个表数据添加别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33184650/