marcosgugs Postado Janeiro 30, 2007 Denunciar Share Postado Janeiro 30, 2007 Olá, estou com um problema que não sei se pode ser resolvido da forma que eu quero...bom...eu preciso criar um select, e no meu resultado é necessário vir um contador de linhas...por exemplo:select CONTADOR, codigo, nome from clientes; então o resultado seria: 1 184621 Marcos Junior 2 556423 Nelson Alvez 3 225462 Rodrigo Pereira 4 312121 Ricardo Fagundes esse CONTADOR eu não sei como fazer no sql... alguém poderia me ajudarURGENTE !!!desde já agradeço a atenção de todos...um enorme abraço e uma ótima semana Link para o comentário Compartilhar em outros sites More sharing options...
0 paulobergo Postado Janeiro 31, 2007 Denunciar Share Postado Janeiro 31, 2007 Olá!Comecei agora com MySQL e estou penando muito... (quero passar do SQL da BDE para o MySQL)...Mas vi sua mensagem e me lembrei dessa rotina... não sei se resolve seu problema, pois não sei se ela se aplica ao MySQL... mas o código é esse: E' preciso criar uma tabela temporaria em SQL com uma coluna que contenha um valor inteiro para incrementar, sem dar a essa coluna uma identidade. Por exemplo, supondo que você queira selecionar um registro de uma tabela de usuários, mas adicionado uma coluna que contenha um contador incremental... os dados dessa tabela poderiam ser assim: contador UsuarioID nome celular ... 0 93988 Zezinho 9102-2002 1 78829 Ana 8877-9292 2 65432 SandroPlankton 9582-9399 ... Para iniciar, é preciso que você execute a query a seguir, para criar a tabela temporária: select contador = 0, * from usuarios into #us_temp Isto criara uma tabela com o nome de #us_temp onde a coluna "contador" é definida com zero em cada linha ou registro. Para pedir para atualizar a coluna contador para que cada linha (registro) tenha um valor maior do que a linha anterior, execute o seguinte: DECLARE @contador int SET @contador = 0 UPDATE #us_temp SET @contador = contador = @contador + 1 Ok?Bom... tenho certeza de que o código acima não funciona nas queries no DBExplorer... mas quem sabe funciona no MySQL... Abraços! Link para o comentário Compartilhar em outros sites More sharing options...
0 paulobergo Postado Janeiro 31, 2007 Denunciar Share Postado Janeiro 31, 2007 Em tempo...Se fosse no DB2 (IBM) para Linux, Unix ou Windows:"An example of such a function or method is a simple counter function that returns a '1' the first time it is called, and increments the result by one each successive call. Such a function could, in some circumstances, be used to number the rows of a SELECT result: SELECT counter(), a, b+c, ... FROM tablex WHERE ... The function needs a place to store the current value for the counter between invocations, where the value will be guaranteed to be the same for the following invocation. On each invocation, the value can then be incremented and returned as the result of the function.This type of routine is NOT DETERMINISTIC. Its output does not depend solely on the values of its SQL arguments."Bom... daí para o MySQL... é com vocês! Link para o comentário Compartilhar em outros sites More sharing options...
0 marcosgugs Postado Fevereiro 1, 2007 Autor Denunciar Share Postado Fevereiro 1, 2007 primeiramente, obrigado Paulo pelas respostas... elas foram muito úteis...o lance de criar a tabela temporária eu sei que funciona, já fiz o teste aquimas a minha dúvida é se tem como fazer esse contador, sem ter que criar tabela temporária...fazendo o contador apenas em um select ...entendeu?um grande abraçoboa semana_marcos Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
marcosgugs
Olá, estou com um problema que não sei se pode ser resolvido da forma que eu quero...
bom...
eu preciso criar um select, e no meu resultado é necessário vir um contador de linhas...
por exemplo:
então o resultado seria:esse CONTADOR eu não sei como fazer no sql... alguém poderia me ajudar
URGENTE !!!
desde já agradeço a atenção de todos...
um enorme abraço e uma ótima semana
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados