Sql 同一表的两列中的相同值

Sql 同一表的两列中的相同值,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我有这张桌子 NAME TYPE codigo numeric referencia varchar codigo referencia 3018 7898379460494 3062 7897840302639 3064 7897840300154 我想写一个这样的选择: select CODIGO, REFER

我有这张桌子

    NAME           TYPE 
   codigo        numeric
   referencia    varchar 

   codigo         referencia
    3018        7898379460494
    3062        7897840302639          
    3064        7897840300154
我想写一个这样的选择:

    select CODIGO, REFERENCIA, DESCRICAO  from ESTOQUE where CODIGO like REFERENCIA 

要知道是否有codigo和reference具有相同值的行,您应该能够执行以下操作:

select CODIGO, REFERENCIA, DESCRICAO  
from ESTOQUE 
where convert(varchar(max),CODIGO) = REFERENCIA
select CODIGO, REFERENCIA, DESCRICAO  from ESTOQUE
    where convert(varchar, CODIGO) = REFERENCIA
多谢大家

          select CODIGO, REFERENCIA, DESCRICAO  
         from ESTOQUE 
         where convert(varchar(max),CODIGO) = REFERENCIA

代码工作得很完美。

你真的应该改掉在没有长度的情况下声明
varchar
的习惯:)是的,是的-我把原来的问题复制得有点太近了,在我自己的代码中应该有一个@巴里,对不起,更新了我的答案
          select CODIGO, REFERENCIA, DESCRICAO  
         from ESTOQUE 
         where convert(varchar(max),CODIGO) = REFERENCIA