Tengo una tabla de anuncios (publicidad en mi sitio).
Entre otros atributos, la tabla en MySQL tiene los siguiente dos:
views (INT): Cuenta las veces que se imprime mi anuncio.
clicks (INT): Cuenta las veces que se hizo click en el anuncio.
A mí me gustaría ordenar los anuncios así: de más popular a menos popular. Así puedo saber cuál está dando mejor resultado.
Para ello, necesito calcular otro dato, llamado rate, que sería calculado así:
rate = clicks / views; //y seria un porcentaje
¿Qué sería lo mejor en este caso?
a) Poner otro atributo en la base de datos llamado rate y actualizarlo cada vez que actualice views o bien clicks. Así podría llamar los anuncios y ordenarlos con un
SELECT * FROM publicidad ORDER BY rate DESC
b) Dejar sólo views y clicks en la DB y calcular rate ya sea desde MySQL o PHP. Después meter todos mis anuncios en un array y ordenarlo con alguna función de PHP.
c) ¿O quizá no sé y hay forma de ordenar desde MySQL haciendo operaciones? ¿algo como
SELECT * FROM publicidad ORDER BY (views/clicks) DESC ? (me suena raro)
Thanks !