【发布时间】:2017-05-01 20:49:50
【问题描述】:
我正在尝试替换选择查询结果中的列,如 This reference 但与示例不同,我在表中有很多列,因此我无法在选择查询中指定每一列的名称。
我尝试了一些方法来达到同样的效果,但似乎都没有效果。
select
*, (REPLACE(REPLACE(role_id,1,"admin"),2,"moderator") AS role_id
from user;
或
Select *
from user
where role_id = (select REPLACE(role_id,1,"admin") as role_id from user;
这里我们假设 role_id 只有两个可能的值,但是在某些情况下,它可能必须从另一个表中获取数据,即一个不同的表,其中包含不同的 id 和对应于它们的值。
那么有没有办法在单个查询中达到以下条件:-
- 替换从选择查询返回的某些字段的值(假设许多列单独写入所有列的名称是不可行的)
- 从不同表中获取单个表中不同列的替换值。
我需要在一个查询中实现上述条件,但更改不应该在数据库中,只有选择查询的结果需要优化。
也已经参考了以下,但无济于事。
我使用 phpmyadmin 作为引擎,使用 php 作为实现语言。
【问题讨论】: