Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/09/2009, 04:22
Avatar de Fabu_dina
Fabu_dina
 
Fecha de Ingreso: enero-2004
Mensajes: 425
Antigüedad: 20 años, 4 meses
Puntos: 1
porcentajes de acuerdo a totales

A ver quien me puede ayudar

Tengo una tabla (documento) con un campo llamado status el cual puede tomar los valores: new,view,ok,down; otros campos que toman los valores de acuerdo a status llamado motivo y motivob

digamos si el campo
status = `view' motivo puede tomar valores como 1,2,3; motivob=null
status = 'new' motivo = null y motivob = null
status = 'ok' motivo = null y motivob = null
status = 'down' motivo = null y motivob puede tomar a,b y c

Lo que necesito hacer es una consulta que me refleje el total de los registros y un porcentaje de cada uno de ellos


Me explico con datos


Código HTML:
<table width="400" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td>id</td>
    <td>status</td>
    <td>motivo</td>
    <td>motivob</td>
  </tr>
  <tr>
    <td>1</td>
    <td>new</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>2</td>
    <td>view</td>
    <td>2</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>3</td>
    <td>view</td>
    <td>3</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>4</td>
    <td>view</td>
    <td>1</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>5</td>
    <td>view</td>
    <td>2</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>6</td>
    <td>new</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>7</td>
    <td>new</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>8</td>
    <td>down</td>
    <td>&nbsp;</td>
    <td>a</td>
  </tr>
  <tr>
    <td>9</td>
    <td>down</td>
    <td>&nbsp;</td>
    <td>a</td>
  </tr>
  <tr>
    <td>10</td>
    <td>down</td>
    <td>&nbsp;</td>
    <td>b</td>
  </tr>
  <tr>
    <td>11</td>
    <td>down</td>
    <td>&nbsp;</td>
    <td>c</td>
  </tr>
  <tr>
    <td>12</td>
    <td>ok</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>13</td>
    <td>ok</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>14</td>
    <td>ok</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table> 

el total es 14

el total para new es 3 el porcentaje es 21.42%
el total para view es 4 el porcentaje es 28.57%
el total para down es 4 el porcentaje es 28.47%
el total para ok es 3 el porcentaje es 21.42%

la suma de porcentajes me da el 100%

de view2 es 2 con porcentaje 14.28%
de view3 es 1 con porcentaje 7.14%
de view1 es 1 con porcentaje 7.14%

la suma son el % total de view

y asi para cada caso

alguien puede sugerirme alguna sentencia sql para sacar esta informacion en una sola corrida

muchas gracias ya que llevo tiempo queriendo sacar esto y no he llegado al resultado.