SQL COM MAX() E WHERE

MANOELACFILHO 29/03/2014 16:14:23
#436679
Amigos, realmente estou penando um monte para matar esta SQL. O problema é o seguinte, tenho uma tabela com vários registros, dentre eles tenho uma coluna chamada [Ô]LINE[Ô] que é muito importante na sequencia do meu código, e, dentre outros, uma coluna chamada CSCODE, que contem registros repetidos, a Coluna LINE não possui registos repetidos ok? Antes de inserir um novo registro contendo o mesmo CSCODE, eu preciso descobrir qual é o maior numero da coluna LINE associada ao CSCODE correspondente. Eu já tentei diversas formas de fazer, dentre elas a seguinte:

SQL = [Ô]SELECT MAX(LINE) FROM MAT_MOV WHERE CSCODE = AV0041[Ô].

O que eu achei ser óbvio, não era, ou seja, será possível juntar a função MAX() com a clausula WHERE ? Ou terei que trabalhar comum DATATABLE?

Sds.
MARCELO.TREZE 29/03/2014 18:33:04
#436681
supostamente sim


acho que so faltou um apostrofo ai no valor dado ao CSCODE, veja

SQL = [Ô]SELECT MAX(LINE) FROM MAT_MOV WHERE CSCODE = [ô]AV0041[ô][Ô].
JCM0867 29/03/2014 23:58:23
#436684
Não entendi o quer dizer de juntar o Max no Where
realmente falta apostrofo no AV0041 já que se trata de uma string

Acredito que tua SQL deva ficar:
[txt-color=#0000f0]SQL = [Ô]SELECT MAX(LINE)+1 as Registro FROM MAT_MOV WHERE CSCODE = [ô]AV0041[ô][Ô][/txt-color]


a ciencia sem religiao é manca, a religiao sem a ciencia é cega!
Albert Einstein
MANOELACFILHO 30/03/2014 06:56:47
#436686
MEU DEUS!!!!!!!

PERFEITO!!!!,


Obrigado Amigos..
JCM0867 30/03/2014 08:38:22
#436687
Ainda pode fazer assim:

DIM compara as String
compara = [Ô]AV0041[Ô]

[txt-color=#0000f0]SQL = [Ô]SELECT MAX(LINE)+1 as Registro FROM MAT_MOV WHERE CSCODE = [ô] [Ô] & compara & [Ô] [ô] [Ô][/txt-color]


[Ô]Nem tudo que se enfrenta pode ser modificado mas nada pode ser modificado até que seja enfrentado[Ô]
Albert Einstein
Faça seu login para responder