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