如何让MySQL不显示某一列(mysql 不显示一列)

如何让MySQL不显示某一列?

在MySQL数据库中,有时候我们可能需要隐藏某些列,以保护重要数据或减少信息泄露的风险。此时,我们可以使用SELECT语句中的”SELECT * EXCEPT”功能来实现不显示某一列的目的。

具体步骤如下:

步骤1:在SELECT语句中使用”* EXCEPT”关键字

在SELECT语句中,我们可以使用”* EXCEPT”关键字来指定不显示某一列。例如:

SELECT column1, column2, * EXCEPT (column3) FROM table_name;

上述语句中,column1和column2显示出来,而column3不显示出来。

步骤2:使用AS关键字重命名列名

如果我们不想显示某一列,但是又需要保留该列的数据,可以使用AS关键字将该列重命名。例如:

SELECT column1, column2, column3 AS ‘Hidden Column’ FROM table_name;

上述语句中,列名为”column3″的列被重命名为”Hidden Column”,数据仍然被保留,但是不会在结果中显示出来。

步骤3:使用竖线(|)分隔符分割列

我们还可以使用竖线(|)分隔符分割列,从而让某一列不在结果中显示出来。例如:

SELECT column1, column2, CONCAT(column3, ‘|’) AS ‘Hidden Column’ FROM table_name;

上述语句中,列名为”column3″的列被加上了竖线分隔符,从而不在结果中显示出来。

需要注意的是,以上方法仅仅适用于SELECT语句中的查询操作,而不会对数据进行任何修改或删除操作。

示例代码:

创建一个名为”student”的表:

CREATE TABLE `student` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`name` varchar(50) NOT NULL,

`age` int(11) NOT NULL,

`eml` varchar(50) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

向表中插入一些数据:

INSERT INTO `student` (`name`, `age`, `eml`) VALUES

(‘Tom’, 18, ‘tom@example.com’),

(‘Jerry’, 20, ‘jerry@example.com’),

(‘Lucy’, 22, ‘lucy@example.com’);

查询表中的数据,并将”eml”列不显示出来:

SELECT `id`, `name`, `age`, * EXCEPT (`eml`) FROM `student`;

查询结果为:

+—-+——-+—–+————-+

| id | name | age | eml |

+—-+——-+—–+————-+

| 1 | Tom | 18 | |

| 2 | Jerry | 20 | |

| 3 | Lucy | 22 | |

+—-+——-+—–+————-+

同样,我们也可以使用AS关键字对”eml”列进行重命名:

SELECT `id`, `name`, `age`, eml AS ‘Hidden Eml’ FROM `student`;

查询结果为:

+—-+——-+—–+—————-+

| id | name | age | Hidden Eml |

+—-+——-+—–+—————-+

| 1 | Tom | 18 | tom@example.com |

| 2 | Jerry | 20 | jerry@example.com |

| 3 | Lucy | 22 | lucy@example.com |

+—-+——-+—–+—————-+

我们还可以使用竖线分隔符将”eml”列不在结果中显示出来:

SELECT `id`, `name`, `age`, CONCAT(eml, ‘|’) AS ‘Hidden Eml’ FROM `student`;

查询结果为:

+—-+——-+—–+—————+

| id | name | age | Hidden Eml |

+—-+——-+—–+—————+

| 1 | Tom | 18 | tom@example.com|

| 2 | Jerry | 20 | jerry@example.com|

| 3 | Lucy | 22 | lucy@example.com|

+—-+——-+—–+—————+

总结:

以上就是在MySQL数据库中如何让某一列不在结果中显示的方法,分别介绍了使用”* EXCEPT”关键字、AS关键字和竖线分隔符三种方法,希望能对大家有所帮助。


数据运维技术 » 如何让MySQL不显示某一列(mysql 不显示一列)