Pergunta : Pergunta misteriosa do acesso

Vista geral
Eu funcionei em uma edição com uma pergunta do acesso que eu gostasse de funcionar por outros peritos.  Eu já tenho uma ac1ão alternativa, assim que eu não estou interessado naquele. O que eu estou procurando é uma explanação ou alguma introspecção para compreender melhor porque a pergunta não trabalha como esperado.

A pergunta
YOURTABLE é a única tabela é involvido.  Tem uma coluna que seja a chave preliminar e o EmployeeID, whiich da identificação é exigido igualmente. Igualmente tem muitas colunas opcionais, mas para simplificar esta pergunta que eu eliminei tudo com exceção de três.

Um empregado pode ter registros múltiplos.  Cada registro pode ter o zero-à-todo dos campos opcionais povoados.  Aqueles não povoados são zero ou contêm uma corda vazia.

Eu quero a pergunta retornar 1 fileira por o empregado.  Quando um empregado tem registros múltiplos, eu quero esse com os campos os mais opcionais povoados.  Quando há um laço, eu quero esse com a chave preliminar a mais elevada.

Minha aproximação
Eu uso perguntas aninhadas para produzir os resultados.  YOURTABLECOUNT retorna cada fileira com uma coluna extra que conte os campos opcionais.  YOURMAXCOUNT retorna apenas as fileiras com os campos os mais opcionais povoados para cada empregado.  Ambas aquelas perguntas trabalham muito bem.  

Entretanto, YOURMAXCOUNT produz fileiras múltiplas para o mesmo empregado.  Isso é esperado quando há laços na contagem povoada a mais elevada do campo. QUERY1 é uma tentativa de eliminar os laços selecionando a chave preliminar a mais elevada entre dos laços.


O problema
Eu espero QUERY1 retornar 1 fileira para cada empregado que usa um sub-query correlacionado. Mas retorna somente 1 fileira completamente como se a peça da correlação está sendo ignorada. Em vez de retornar a chave preliminar a mais elevada ENTRE DOS LAÇOS para o mesmo empregado, retorna somente a chave preliminar a mais elevada ATRAVÉS DA TABELA INTEIRA.

Eu começ os resultados previstos em QUERY2, simplesmente usando pseudônimos diferentes da tabela do que QUERY1.   Parece como o esse não deve importar, mas parece a.

Eu igualmente começ os resultados previstos em QUERY3 com os pseudônimos mas a utilização da tabela original de uma junta em vez de um subquery correlacionado.

A base de dados do teste
Eu realizo que esta é uma pergunta prolixa; é compreendida melhor olhando a base de dados unida do teste.   BTW, eu tenho o problema em .mdb e em lima de .accdb using o acesso 2007.

Perguntas
1.  Por que QUERY1 retorna 1 fileira em vez de 1 fileira por o empregado?
2.  Por que pseudônimos mudar da tabela faz uma diferença?












 

 
Acessórios:
 
Teste misterioso da pergunta
 

Resposta : Pergunta misteriosa do acesso

O Android 2.0 suporta para cima clientes da troca do mutiple: -

http://developer.android.com/sdk/android-2.0-highlights.html


Outras soluções  
 
programming4us programming4us