Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Samuel Mattos

[Resolvido] Sql identificador inválido

Recommended Posts

Bom dia, aqui estou mais uma vez pedindo ajuda a respeito de uma query que estou passando de postgres para oracle em postgres ela está da seguin te forma.

 

SELECT a.num_senha, a.id_uni, qtd_serv.count, a.nm_cli,to_char(a.dt_cheg,'DD/MM/YYYY') as dt_cheg,
	 		to_char(a.dt_ini,'HH24:MI:SS') as dt_ini,to_char(a.dt_fim,'HH24:MI:SS') as dt_fim, s.nm_serv,
	 		u.login_usu, a.num_guiche, to_char(a.dt_cha,'HH24:MI:SS') as dt_cha, uni.nm_uni,
               to_char ((dt_fim - dt_ini),'HH24:MI:SS') as tempo
			FROM view_historico_atendimentos a
			LEFT OUTER JOIN usuarios u
				ON u.id_usu = a.id_usu
			INNER JOIN uni_serv s
				ON s.id_serv=a.id_serv
			AND s.id_uni = a.id_uni
			INNER JOIN(
				SELECT id_atend, COUNT(id_serv)
				FROM view_historico_atend_codif
				GROUP BY id_atend) qtd_serv
			ON a.id_atend = qtd_serv.id_atend
			INNER JOIN unidades uni
			ON a.id_uni = uni.id_uni
			WHERE a.id_stat = 8
			AND a.dt_cheg >= to_date('2012-02-14 00:00:00','yyyy-mm-dd HH24:MI:ss')
			AND a.dt_cheg <= to_date('2012-02-14 23:59:59','yyyy-mm-dd HH24:MI:ss')
			AND a.id_uni IN (29)
			ORDER BY a.id_uni, a.num_senha, a.dt_cheg

 

Quando eu coloco ela no oracle me retorna o seguinte erro. "Erro de SQL: ORA-00904: "QTD_SERV"."COUNT": identificador inválido"

ai retiro o identificador que ele aponta como sendo inválido e a query funciona ja tentei colocar uma subquery no meu select mesmo assim não funciona pois ele busca as informações porcessadas da query se alguem tiver alguma sugestão fico a disposição.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem de ter um aliais.

 

SELECT a.num_senha, a.id_uni, qtd_serv.QTD, a.nm_cli,to_char(a.dt_cheg,'DD/MM/YYYY') as dt_cheg,
                               to_char(a.dt_ini,'HH24:MI:SS') as dt_ini,to_char(a.dt_fim,'HH24:MI:SS') as dt_fim, s.nm_serv,
                               u.login_usu, a.num_guiche, to_char(a.dt_cha,'HH24:MI:SS') as dt_cha, uni.nm_uni,
               to_char ((dt_fim - dt_ini),'HH24:MI:SS') as tempo
                               FROM view_historico_atendimentos a
                               LEFT OUTER JOIN usuarios u
                                       ON u.id_usu = a.id_usu
                               INNER JOIN uni_serv s
                                       ON s.id_serv=a.id_serv
                               AND s.id_uni = a.id_uni
                               INNER JOIN(
                                       SELECT id_atend, COUNT(id_serv) QTD
                                       FROM view_historico_atend_codif
                                       GROUP BY id_atend) qtd_serv
                               ON a.id_atend = qtd_serv.id_atend
                               INNER JOIN unidades uni
                               ON a.id_uni = uni.id_uni
                               WHERE a.id_stat = 8
                               AND a.dt_cheg >= to_date('2012-02-14 00:00:00','yyyy-mm-dd HH24:MI:ss')
                               AND a.dt_cheg <= to_date('2012-02-14 23:59:59','yyyy-mm-dd HH24:MI:ss')
                               AND a.id_uni IN (29)
                               ORDER BY a.id_uni, a.num_senha, a.dt_cheg

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.