gpt4 book ai didi

PHP MySQL 将结果查询行合并到单列中

转载 作者:行者123 更新时间:2023-11-29 10:36:36 26 4
gpt4 key购买 nike

如果我有一个包含 code1、code2、code3 和 code4 等列的数据库表。然后我对该表运行以下查询。

SELECT * 
FROM codetable
WHERE code1 = 23 OR code2 = 23 OR code3 = 23 OR code4 = 23

然后,我将返回其中任何一列匹配的所有行。我需要获取这些结果并将它们写入一个新的数据库表,其中有两列。第一列将是正在搜索的代码,在本例中为“23”,第二列将是从我的查询中找到的非 23 的任何匹配结果。

因此,如果我的代码表中的一行看起来像这样......

code1|code2|code3|code4
23 |27 |30 |45

我的新表格将采用这样的格式,

queriedcode|result
23 | 27
23 | 30
23 | 45

是否有 MySQL 查询可用于实现此目的,或者我最好的选择是使用 PHP,我似乎无法找到合理的方法来完成我想要使用的任务。到目前为止我想出的一切似乎要么不起作用,要么过于复杂,很容易失败。

最佳答案

在 PHP 中执行此操作可能更有效。但是,你可以这样做:

select code1 as queriedcode, code2 as result from t where code1 = 23 union all
select code1, code3 from t where code1 = 23 union all
select code1, code4 from t where code1 = 23 union all
select code2, code1 from t where code2 = 23 union all
select code2, code3 from t where code2 = 23 union all
select code2, code4 from t where code2 = 23 union all
select code3, code1 from t where code3 = 23 union all
select code3, code2 from t where code3 = 23 union all
select code3, code4 from t where code3 = 23 union all
select code4, code1 from t where code4 = 23 union all
select code4, code2 from t where code4 = 23 union all
select code4, code3 from t where code4 = 23 ;

关于PHP MySQL 将结果查询行合并到单列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46289370/

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