您可以在MySQL结果集中用字符串替换数字吗?
我很好奇是否可以显示一行文本,而不是通过MySQL返回的实际结果,例如,我有一个表:您可以在MySQL结果集中用字符串替换数字吗?,mysql,Mysql,我很好奇是否可以显示一行文本,而不是通过MySQL返回的实际结果,例如,我有一个表: CREATE TABLE users ( id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20) NOT NULL, gender SMALLINT(1) ); 现在,我想执行以下查询: SELECT * FROM users 默认情况下,这将返回如下内容(虚拟数据): 但是,我想知道是否有办法改变它,这样它就不会输出0/1,
CREATE TABLE users (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(20) NOT NULL,
gender SMALLINT(1)
);
现在,我想执行以下查询:
SELECT * FROM users
默认情况下,这将返回如下内容(虚拟数据):
但是,我想知道是否有办法改变它,这样它就不会输出0/1
,而是像这样输出:
id | name | gender
---------------------------
1 Rob male
2 Sam female
3 Alyssa female
4 Tom male
您可以使用
CASE WHEN是mysql流控制语句的一部分。通常,即使您可能希望基于比较选择某个对象,您也会在比较时执行一个
案例,然后在其他值结束时对其他值进行赋值。Mysql也有IF-ELSE,但它用于存储过程而不是简单的查询。usecase
<代码>当
<编码>然后…其他
select id, Name, case gender when 1 THEN 'female' else 'male' end as gender from users
您可以使用
大小写
表达式:
SELECT id,
name,
CASE gender WHEN 0 THEN 'male' WHEN 1 THEN 'female' END AS gender
FROM users
对于内容或数据的替换,必须使用“状态时的情况” ,
通过使用它,您可以根据需要执行您的结果。谢谢@VicenteOlivertRiera,西部最快的枪的危险game@e4c5-我把它标对了,很抱歉。当计时器阻止我标记时,我往往会忘记。不用担心。祝你的项目一切顺利
select id, Name, case gender when 1 THEN 'female' else 'male' end as gender from users
SELECT id,
name,
CASE gender WHEN 0 THEN 'male' WHEN 1 THEN 'female' END AS gender
FROM users