我有一个 MS Access 表,其中包含员工联系信息,员工维护自己的记录,任何人都可以访问数据库。我需要两个返回电话列表的查询。第一个只是简单地返回所有名称和数字。
SELECT LastName, FirstName, HomePhone, MobilePhone FROM StaffDetails ORDER BY ASC;
对于第二个,表中有一个布尔列叫做 PrivateNumbers。如果工作人员将他们的号码设置为私有,我希望查询将他们标记为私有。那么,我可以编写一个 SQL 查询来查看布尔值,然后在查询结果中将 HomePhone 和 MobilePhone 更改为“Private”吗?
理论是,如果任何工作人员查看电话列表,私人号码就会被列出。如果管理层看,他们就会看到这一切。
您必须对此进行测试,因为我无权访问您的数据库,但是在您的 sql 中添加 case 语句可以解决您的问题。
SELECT
LastName
,FirstName
,IIF(PrivateNumbers, 'Private',HomePhone) AS HomePhone
,IIF(PrivateNumbers, 'Private',MobilePhone) AS MobilePhone
FROM StaffDetails
ORDER BY ASC;
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句