php - 如果另一个字段具有特定条件,如何隐藏列值

标签 php mysql sql phpmyadmin

我创建了一个包含表单的基本网站。此表单从用户那里捕获以下信息并将其存储在 PHPMyAdmin 表中:

名字、姓氏、头衔、描述、电子邮件地址、显示电子邮件地址(是/否)。

输入的一个例子是:

David, Beckham, Mr, Hello I am a boy, david@hotmail.com, Yes

同样在网站上,我有一个表格,显示了通过使用此 PHP 代码存储在我的数据库中的所有用户的列表:

$sql = "SELECT UserID, UserForeName, UserSurname, UserTitle, UserDescription, 
UserEmailAddress FROM Users";

我将如何编辑此 SQL,以便如果用户对“显示电子邮件”字段回答“否”,他们的行将从该行中省略他们的电子邮件地址。例如:

David, Beckham, Mr, Hello I am a boy, david@hotmail.com, Yes

Lucy, Sky, Mrs, Hello I am a girl, , No

我尝试了以下查询,但到目前为止还没有成功:

SELECT CASE WHEN EmailReveal = 'yes'
        THEN SELECT *
        ELSE SELECT UserID, UserForeName, UserSurname, UserTitle, UserDescription
   END AS col 
FROM Users;

最佳答案

SELECT 
    UserID, 
    UserForeName, 
    UserSurname, 
    UserTitle, 
    UserDescription, 
    CASE WHEN showemailcondition THEN UserEmailAddress ELSE '' END `Email`
FROM Users

这就是您将如何以简单的方式使用 CASE WHEN。

关于php - 如果另一个字段具有特定条件,如何隐藏列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57292061/

相关文章:

javascript - 如何获取PHP echo问号后的值

sql - 如何建立分类表

javascript - Web SQL DROP/DELETE 表不工作

phpmyadmin auth 加密协议(protocol)

php - 使用连接从两个以上的表中获取记录

php - 在 list 中声明自定义 URL 架构导致在完整的操作对话框中重复应用

sql - MySQL 查询 - ORDER BY

mysql - 为什么我不能以这种方式添加外键约束?

MySQL 将日期范围转换为单行/每年的计数天数?

sql - SSIS 中是否有用于平面文件源的 WHERE 子句功能?