簡體   English   中英

SQL從兩個表中獲取數據

[英]Sql get data from two tables with a twist

我想要兩個從兩個dable用戶獲取數據,並在下面列出數據

User table -->

id name   time
 1 first  2016-04-20 15:13:13
 2 second 2016-04-20 15:13:13
 3 third  2016-04-20 15:13:13
 4 forth  2016-04-20 15:13:13
 5 fifth  2016-04-20 15:13:13

Data table -->

id data user_id time
 1 2000       1 2016-04-20 15:10:18
 2 3000       2 2016-04-20 15:10:18
 3 4000       3 2016-04-20 15:10:18
 4 2000       4 2016-04-20 15:10:18
 5 3000       5 2016-04-20 15:10:18

可以很容易地加入他們

select d.data
     , u.name 
  from data d
  left 
  join users u 
    on d.user_id = u.id 
 order 
    by d.data DESC

它給->

data name
4000 third
3000 fifth
3000 second
2000 forth 
2000 first

但是我只想像使用SQL查詢一樣(可以使用muti dim數組來完成)

我只想查詢的任何方式

data name name
2000 first forth
3000 second fifth
4000 third

請引導我

您可以使用GROUP BY將結果按所需的字段分組,然后使用GROUP_CONCAT函數(聚合函數)將每個組中的字符串連接為單個字符串。

 select data.data,GROUP_CONCAT(users.name) from data left join users on   
 data.user_id=users.id GROUP BY data.data order by data.data DESC
select d.data,GROUP_CONCAT(u.name) from data d left join users u on   
 d.user_id=u.id GROUP BY d.data order by d.data DESC

'Group_concat'從用戶返回列名的所有相應值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM