gpt4 book ai didi

mysql - 如何在 SELECT 的结果中有条件地对某些行进行二元化?

转载 作者:行者123 更新时间:2023-11-29 05:55:14 24 4
gpt4 key购买 nike

假设我们在 MySQL 数据库中有一个表,它有两个文本列 mime_typefile_name。我可以用这种方式从这个表中SELECT一个数据:

id  mime_type           file_name
001 application/pdf file_one.pdf
002 image/png screenshot.png
002 image/png thumb_screenshot.png # <- This row is "virtual"
...

即根据 mime_type 列(对于图像文件)的内容,在表行中添加一个实际上不存在的具有相同数据的内容,但 file_name 的值略有变化。

有什么方法可以使用 SQL 来做到这一点吗?

最佳答案

你可以使用union all:

select id, mime_type, file_name
from t
union all
select id, mime_type, 'thumb_screenshot.png'
from t
where mime_type = 'image/png';

编辑:

基于评论:

select id, mime_type, file_name
from t
union all
select id, mime_type, concat('thumb_', file_name)
from t
where mime_type = 'image/png';

关于mysql - 如何在 SELECT 的结果中有条件地对某些行进行二元化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50021033/

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