Fórum Select Distinct com ADODataSet #197723
28/11/2003
0
Pessoal,
estou passando uma instrução sql em um ADO DataSet para um banco Oracle. O problema que estou tendo é que não funciona o DISTINCT da minha instrução.
Alguém poderia me dizer se o Data Set tem alguma restrição com Select Distinct.
Olhem a minha instrção:
with DmFrontEnd.adsSelecao do
begin
Close;
strSQL := ´ SELECT DISTINCT a.gru_ctr_estoq, .den_gru_ctr_estoq ´ +
´ FROM logix.grupo_ctr_estoq a´ +
´ WHERE a.cod_empresa IN (SELECT b.cod_empresa from mcl_cod_empresa b)´ +
´ ORDER BY gru_ctr_estoq´;
CommandText := strSQL;
Open;
end;
estou passando uma instrução sql em um ADO DataSet para um banco Oracle. O problema que estou tendo é que não funciona o DISTINCT da minha instrução.
Alguém poderia me dizer se o Data Set tem alguma restrição com Select Distinct.
Olhem a minha instrção:
with DmFrontEnd.adsSelecao do
begin
Close;
strSQL := ´ SELECT DISTINCT a.gru_ctr_estoq, .den_gru_ctr_estoq ´ +
´ FROM logix.grupo_ctr_estoq a´ +
´ WHERE a.cod_empresa IN (SELECT b.cod_empresa from mcl_cod_empresa b)´ +
´ ORDER BY gru_ctr_estoq´;
CommandText := strSQL;
Open;
end;
Mascotepc
Curtir tópico
+ 0
Responder
Posts
28/11/2003
Vanius
Boa tarde.
na sua instrução:
with DmFrontEnd.adsSelecao do
begin
Close;
strSQL := ´ SELECT DISTINCT a.gru_ctr_estoq, .den_gru_ctr_estoq ´ +
´ FROM logix.grupo_ctr_estoq a´ +
´ WHERE a.cod_empresa IN (SELECT b.cod_empresa from mcl_cod_empresa b)´ +
´ ORDER BY gru_ctr_estoq´;
CommandText := strSQL;
Open;
end;
O segundo campo esta ´.Den_Gru_Ctr_Estoq´. Creio q esta faltando a letra ´A´ antes do ponto.
Agora o DISTINCT funciona apenas para valores diferentes para os 2 campos. Ex:
Campo1 Campo2
A B
A C
A E
B A
Este seria o resultado correto.
De forma alguma ele iria repetir um resultado. Ex:
Campo1 Campo2
A B
A B
A C
A E
B A
Acho q expliquei bem.
Abraços,
Vanius
vaniusg@yahoo.com.br
na sua instrução:
with DmFrontEnd.adsSelecao do
begin
Close;
strSQL := ´ SELECT DISTINCT a.gru_ctr_estoq, .den_gru_ctr_estoq ´ +
´ FROM logix.grupo_ctr_estoq a´ +
´ WHERE a.cod_empresa IN (SELECT b.cod_empresa from mcl_cod_empresa b)´ +
´ ORDER BY gru_ctr_estoq´;
CommandText := strSQL;
Open;
end;
O segundo campo esta ´.Den_Gru_Ctr_Estoq´. Creio q esta faltando a letra ´A´ antes do ponto.
Agora o DISTINCT funciona apenas para valores diferentes para os 2 campos. Ex:
Campo1 Campo2
A B
A C
A E
B A
Este seria o resultado correto.
De forma alguma ele iria repetir um resultado. Ex:
Campo1 Campo2
A B
A B
A C
A E
B A
Acho q expliquei bem.
Abraços,
Vanius
vaniusg@yahoo.com.br
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)