otinhow 0 Denunciar post Postado Outubro 11, 2005 E aew pessoal ! caramba, to mt confuso.. to com um problema para listar os dados do banco de dados.. eu ja consegui resolver isso usando PHP depois de obter os resultados.. mas iss não é o certo, até por que estou lidando com cerca de 5000 registros no total Eu tenho uma tabela com os dados dos sócios titulares, e outra com os dados dos sócios dependentes Elas estão relacionadas pelo título do sócio titular e cada dependente de um sócio titular possui um ID para organizar os dependentes por titular só que existem um porem.. os títulos podem ser vendidos.. e o cliente gostaria de manter no banco de dados os donos dos antigos titulos. para definir qual é o proprietário atual, eles utilizam um digito verificador. Primeiro dono tem DV_Titulo = 0, o segundo DV_Titulo = 1 .. e por ai vai.. e na tabela de dependentes existe tb esse campo .. DV_Titulo.. Enfim, titulares e dependentes estão relacionados pelo numero do titulo e o digito verificar.. Num_Titulo e DV_Titulo A minha complicação não está agora no relacionamento dos sócios com os dependentes.. está para listar os dependentes com o maior DV_Titulo, que significa que ele é o proprietário mais recente Exemplo da base de dados [TITULARES]Num_Titulo - DV_Titulo - Nome-----------------------------------------1 _ 0 _ Vitor1 _ 1 _ Dono 22 _ 2 _ Slavic3 _ 0 _ Tammy4 _ 0 _ Dave5 _ 0 _ Mason6 _ 0 _ Beric6 _ 1 _ Jordan6 _ 2 _ Tevis7 _ 0 _ Donatan8 _ 0 _ Prety9 _ 0 _ Carlon9 _ 1 _ Mario10 _ 0 _ Joao11 _ 0 _ Pedro [DEPENDENTES]Num_Titulo_TITULARES - DV_Titulo - Nome - ID------------------------------------------------------------1 _ 0 _ Vitor _ 11 _ 1 _ Carlon _ 11 _ 1 _ Mario _ 21 _ 1 _ Pedro _ 31 _ 1 _ Carlon _ 42 _ 2 _ Slavic _ 13 _ 0 _ Tammy _ 14 _ 0 _ Slavic _ 14 _ 0 _ Tammy _ 24 _ 0 _ Dave _ 35 _ 0 _ Mason _ 16 _ 1 _ Beric _ 16 _ 2 _ Tammy _ 16 _ 2 _ Vitor _ 2 vou por aqui a ultima ideia que tive e não tive sucesso.. achei q tivesse resolvido meu problema com ela.. mas percebi que não estavam entrando todos os sócios no resultado, por exemplo,no BD real, possuo o titulo numero 111, e ele teve 4 donos, então DV_Titulo 1, 2, 3 e 4.. o que eu preciso obter é o 4.. mas ele não me retorna nenhum desses.. simplesmente pula o titulo 111 SELECT Nome, Num_Titulo, DV_Titulo as dv, MAX(DV_Titulo) as max FROM so_socios GROUP BY Num_Titulo HAVING dv = max ORDER BY `Num_Titulo` ASC Estou nervoso com isso.. quebrando a cabeça a dias.. procurando em diversos sites.. encontrando várias opções e não conseguindo resolver de nenhum jeito.. alias.. poderia fazer usando 2 pesquisas.. mas creio que não é o correto com um banco de dados tão robusto qnt o mysql.. Desde já obrigado a todos que ajudarem e tb aqueles q não souberem como ajudar.. mas leiam esse post.. vlw Compartilhar este post Link para o post Compartilhar em outros sites
otinhow 0 Denunciar post Postado Outubro 11, 2005 Ah, pra complementar, tentei usando DISTINCT, não deu nada.. tendeu usando IF ( do próprio mysql ) e só não tentei usando subquerys por que meu servidor é 4.0.X =\to no aguardo.. vlw aew !! Compartilhar este post Link para o post Compartilhar em outros sites
walace 1 Denunciar post Postado Outubro 13, 2005 Fechado por já existir um tópico igual no fórum PHP. Compartilhar este post Link para o post Compartilhar em outros sites