合并不同的结果SQL

n00by0815

所以我的问题如下:我有一个要查询的MariaDB数据库。我正在查看实验数据。我想将几个实验总结到一个SQL查询的一个结果行中。

数据如下所示:

Experiment_ID | Antibiotic | Strain | Medium    | ...
1               Ampicillin   E. coli  TBauto      ...
2               Ampicillin   E. coli  TB + IPTG

我想要得到什么:

Experiment_ID | Antibiotic | Strain | Medium               | ...
1               Ampicillin   E. coli  TBauto, TB + IPTG      ...

我不在乎“ Experiment_ID”,只是为了弄清楚我正在谈论两个不同的条目。

我已经试过了

Select
    tmp.*
From
    ((Select * from my_tbl Where ExperimentID = 1)
Union
    (Select * from my_tbl Where ExperimentID = 2)) as tmp

在那里,我仍然得到2行结果。我也可以在我的Python代码中做到这一点但我不想不必修改从数据库中获取的结果。

我想我一定是在寻找错误的词来合并这两个条目。因此,请朝正确的方向引导我。

戈登·利诺夫

您似乎想要聚合:

select min(Experiment_ID) as Experiment_ID, Antibiotic, Strain,
       group_concat(Medium order by Experiment_ID separator ', ')
from t
where Experiment_ID in (1, 2)
group by Antibiotic, Strain;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章