【问题标题】:display all column with one column masked显示所有列,其中一列被屏蔽
【发布时间】:2018-11-28 06:22:40
【问题描述】:

我有两列 - 名称和 ccNumber。我想显示两个列,其中一个被屏蔽。

此查询仅显示一列,但我希望显示所有列:

declare @t table (card_no varchar(20))
insert into @t
select ccNUMBER from ccinfo 
select 'XXXX-XXXX-XXXX-'+ substring(card_no, 13, 4) as card_no from @t

i want name column with ccnumber column to be masked

【问题讨论】:

  • 需要更多相关信息
  • 我的表格中有 2 列,上面的代码只屏蔽并显示一列,我想显示所有列 ccNumber 列
  • 请提供样本数据

标签: sql sql-server tsql sql-server-2008


【解决方案1】:

你可以试试下面

declare @t table (name varchar(100),card_no varchar(20))
insert into @t
select name, ccNUMBER from ccinfo 
select name, 'XXXX-XXXX-XXXX-'+ substring(card_no, 13, 4) as card_no from @t

【讨论】:

    【解决方案2】:

    检查以下示例。我认为您需要连接列。

    create table demo
    
    (
       firstName varchar(30),
        secondName varchar(30)
    );
    
     insert into demo
     values
      ('soumyajit', 'chatterjee'),
      ('papai', 'chatterjee'),
      ('virat', 'kohli');
    
    
      select concat(firstName, ' ', secondName)as Name from demo;
    

    【讨论】:

      【解决方案3】:

      你也需要得到第二列:

      declare @t table (card_no varchar(20), name varchar(64));
      
      insert into @t
      select ccNUMBER, name from ccinfo 
      
      select 'XXXX-XXXX-XXXX-'+ substring(card_no, 13, 4) as card_no, name from @t
      

      或者直接使用原表:

      select 'XXXX-XXXX-XXXX-'+ substring(ccNUMBER, 13, 4) as card_no, name from ccinfo
      

      【讨论】:

        猜你喜欢
        • 2019-02-05
        • 1970-01-01
        • 1970-01-01
        • 2015-08-27
        • 2017-10-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-23
        相关资源
        最近更新 更多