Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Ordenar com base em várias tabelas


Felipe Andrzejewski

Pergunta

link

- lk_id - > 90

- lk_url -> www.terra.com.br

- lk_acessos -> numero de vezes clicados para abrir o site. = 10

- lk_id - > 415

- lk_url -> www.google.com.br

- lk_acessos -> numero de vezes clicados para abrir o site. = 100

publicidade

- pub_id -> 1

- Link_lk_id - 90

- pub_valor - 50,00

- pub_status -> Ativo

- pub_user -> 1

- pub_id -> 2

- Link_lk_id - 90

- pub_valor - 150,00

- pub_status -> Ativo

- pub_user -> 1

usuario_link

- Usuario_usu_id -> 1

- Link_lk_id -> 90

- Usuario_usu_id -> 20

- Link_lk_id -> 90

- Usuario_usu_id -> 543

- Link_lk_id -> 415

- Usuario_usu_id -> 15

- Link_lk_id -> 415

- Usuario_usu_id -> 9

- Link_lk_id -> 90

Tenho essas 3 tabelas com esses valores.

Preciso ordernar esses dados.

O link que tiver publicidade deve ser mostrado por primeiro.

então fica a order -> link com publicidade, publicidade com maior valor, maior nr publicidade, maior nr de acessos, maior nr de usuarios.

não consegui fazer um select decente.

alguém pode me ajudar?

Editado por Denis Courcy
Título editado conforme regra 3.6 (Jonathan)
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

oI, 'Felipe Andrzejewski'

Se entendi direito é isso aqui:

SELECT l.lk_url, p.pub_valor, COUNT(p.pub_id), COUNT(u.Usuario_usu_id)
FROM link l
LEFT JOIN publicidade p ON p.Link_lk_id = l.lk_id
INNER JOIN usuario_link u ON u.Link_lk_id = l.lk_id
GROUP BY l.lk_url
ORDER BY p.pub_valor DESC;

Link para o comentário
Compartilhar em outros sites

  • 0
oI, 'Felipe Andrzejewski'

Se entendi direito é isso aqui:

SELECT l.lk_url, p.pub_valor, COUNT(p.pub_id), COUNT(u.Usuario_usu_id)
FROM link l
LEFT JOIN publicidade p ON p.Link_lk_id = l.lk_id
INNER JOIN usuario_link u ON u.Link_lk_id = l.lk_id
GROUP BY l.lk_url
ORDER BY p.pub_valor DESC;

massa, aham ai ele ordenou por valor, agora falta ordenar por acessos e usuarios

Ordem:

1 - por valor da pub

2 - por acessos

3 - por usuarios que tenha esse link

beleza consegui

brigadao Denis, me salvo de uma hoje.

vlw mesmo

SELECT l.lk_url, SUM(p.pub_valor), COUNT(p.pub_id), COUNT(u.Usuario_usu_id), lk_acessos FROM link l LEFT JOIN publicidade p ON p.Link_lk_id = l.lk_id INNER JOIN usuario_link u ON u.Link_lk_id = l.lk_id GROUP BY l.lk_url ORDER BY SUM(p.pub_valor) DESC, l.lk_acessos desc, COUNT(u.Usuario_usu_id) desc;

a query fico assim

vlw mesmo

ate mais

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...