gpt4 book ai didi

mysql - 从 CONCAT 数据旁边的不同表中获取数据

转载 作者:行者123 更新时间:2023-11-30 01:23:27 26 4
gpt4 key购买 nike

我有以下查询:

SELECT date, GROUP_CONCAT(CONCAT_WS('|', nombre, start, end, posicion)) schedule
FROM dias, empleados
GROUP BY date
ORDER BY date ASC

我得到以下结果:

1376542800  Tesar|12:00|16:00|Cocina,Levina|12:00|16:00|Cocina...
1376629200 Levina|12:00|14:00|Barra,Peter|11:00|14:00|Cocina,...
1376715600 Raquel|12:00|14:00|Barra,Tesar|12:00|14:00|Barra,L...
1376802000 Tom|12:00|14:00|Barra,Raquel|10:00|11:00|Barra,Pet...
1376888400 Tesar|12:00|14:00|Barra,Levina|12:00|14:00|Barra,T..

基本上所有东西都会组合在一起并被复制:我怎样才能得到以下结果:

1376542800  Tesar|12:00|16:00|Cocina
1376629200 Tom|12:00|14:00|Barra,Tesar|11:00|14:00|Cocina
1376715600 Tom|12:00|14:00|Barra
1376802000 Tom|12:00|14:00|Barra,Levina|10:00|11:00|Barra
1376888400 Tom|12:00|14:00|Barraç
PEter
Mike
MArko

基本上是从不同表的“empoladeos”列中获取所有名称(而且它们没有匹配的日期、开始、结束)并无论如何显示它。

非常感谢!

最佳答案

如果 nombre 来自两个表,那么这可能就是您想要的连接键。看来您还需要一个左外连接:

SELECT d.date,
coalesce(GROUP_CONCAT(CONCAT_WS('|', d.nombre, d.start, d.end, d.posicion)), e.nombre) schedule
FROM empleados e left outer join
dias d
on e.nombre = d.nombre
GROUP BY date,
(case when date is NULL then e.nombre end)
ORDER BY date ASC ;

关于mysql - 从 CONCAT 数据旁边的不同表中获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18288434/

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