Wilson, primeiro : vc não disse (ao menos até onde eu vi) a versão de banco, mas na 9i onde testei ele ** não ** deixa vc usar alias de colna no WHERE, que é o que vc está tentando fazer no select original :
SELECT A.NOME, A.CPF, (SUBSTR(A.TIP_DEB_DESP, 0, 4) AS C_CUSTO FROM DEST_ORDEM_SUP A WHERE A.COD_CLI > 100 AND C_CUSTO BEETWEEN '10' AND '500' --// Aqui ocorre o Erro => meu teste : [EMAIL PROTECTED]:SQL>@Desc emp Nome Nulo? Tipo ----------------------------------------- -------- ------------------ ---------- EMPNO NOT NULL NUMBER(4) ENAME VARCHAR2(10) JOB VARCHAR2(9) MGR NUMBER(4) HIREDATE DATE SAL NUMBER(7,2) COMM NUMBER(7,2) DEPTNO NUMBER(2) [EMAIL PROTECTED]:SQL>select empno, substr(ename, 1, 1) as c_custo 2 from emp where c_custo between 'A' and 'B'; from emp where c_custo between 'A' and 'B' * ERRO na linha 2: ORA-00904: nome inválido de coluna [EMAIL PROTECTED]:SQL>ed Gravou arquivo afiedt.buf 1 select empno, substr(ename, 1, 1) as c_custo 2* from emp where substr(ename, 1, 1) between 'A' and 'B' [EMAIL PROTECTED]:SQL>/ EMPNO C ------------------ - 7499 A 7698 B 7876 A 7777 A ==> segunda coisa, CHAR é armazenado sem nenhum trimming de espaços, e CHAR(25) significa SEMPRE 25 caracteres armazenados, mesmo que se digite menos, será que vc não tem ESPAÇOS antes ou depois dos caracteres ? Peça um SELECT A.NOME, A.CPF, (SUBSTR(A.TIP_DEB_DESP, 0, 4) , '*' || (SUBSTR(A.TIP_DEB_DESP, 0, 4) || '!' pra ver o que vem... Essas são as principais suspeitas... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Wilson Ribeiro" <[EMAIL PROTECTED]> escreveu > > Chiappa, o campo do qual faço o SUBSTR, é do tipo Char(23) > > []'s > > Wilson > > -----Mensagem Original----- > De: "jlchiappa" <[EMAIL PROTECTED]> > Para: <oracle_br@yahoogrupos.com.br> > Enviada em: quarta-feira, 29 de março de 2006 16:57 > Assunto: [oracle_br] Re: Uma Duvida sobre select > > > Wilson, será que, tal como dito na msg > http://br.groups.yahoo.com/group/oracle_br/message/70577, Re: > conversão implicita de dados não funciona , e em algumas anteriores, > vc não está passando datatypes DIFERENTES na comparação ?? Exatamente > QUAL é o datatype dessa coluna C_CUSTO na tabela ??? As '' só devem > ser usadas se for datatype caracter (varchar2, normalmente). > > []s > > Chiappa > > --- Em oracle_br@yahoogrupos.com.br, "Fre Cunha" <[EMAIL PROTECTED]> > escreveu > > > > Wilson tenta assim: > > > > SELECT A.NOME, A.CPF, (SUBSTR(A.TIP_DEB_DESP, 0, 4) AS C_CUSTO > > FROM DEST_ORDEM_SUP A > > WHERE A.COD_CLI > 100 > > AND SUBSTR(A.TIP_DEB_DESP, 0, 4) BEETWEEN '10' AND '500' > > > > Ao inves do alias o proprio substr > > > > --- Em oracle_br@yahoogrupos.com.br, "Wilson Ribeiro" <[EMAIL PROTECTED]> > > escreveu > > > > > > Senhores, tenho o seguinte select numa base oracle10g: > > > > > > SELECT A.NOME, A.CPF, (SUBSTR(A.TIP_DEB_DESP, 0, 4) AS C_CUSTO > > > FROM DEST_ORDEM_SUP A > > > WHERE A.COD_CLI > 100 > > > AND C_CUSTO BEETWEEN '10' AND '500' --// Aqui ocorre o Erro, > ele > > não > > > deixa comparar esse campo > > > > > > Já tentei colocar assim: > > > (SUBSTR(A.TIP_DEB_DESP, 0, 4) AS A.C_CUSTO > > > FROM DEST_ORDEM_SUP A > > > WHERE A.COD > 100 > > > AND A.C_CUSTO BEETWEEN '10' AND '500' > > > > > > Mas ele também não aceita, como resolver essa questão? > > > > > > grato > > > > > > - - - - - - - - - - - > > > [ ]'s > > > > > > Wilson Ribeiro > > > [EMAIL PROTECTED] > > > > > > > > > > > > > -------------------------------------------------------------------- ------------------------------------------------------ > Atenção! As mensagens deste grupo são de acesso público e de inteira > responsabilidade de seus remetentes. > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > -------------------------------------------------------------------- ------------------------------------------------------ __________________________________________________________________ > > Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine > __________________________________________________________________ > O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o > link do mesmo para evitar trafego(pedidos) desnecessário. > Links do Yahoo! Grupos > -------------------------------------------------------------------------------------------------------------------------- Atenção! As mensagens deste grupo são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ --------------------------------------------------------------------------------------------------------------------------__________________________________________________________________ Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine __________________________________________________________________ O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o link do mesmo para evitar trafego(pedidos) desnecessário. Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html