Yii Framework Forum: Consulta Sql - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Consulta Sql Rate Topic: -----

#1 User is offline   epulgaron 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 59
  • Joined: 19-February 14

Posted 23 April 2014 - 12:58 PM

hola amigos, tengo esta consultaÑ
SELECT
orga_hc.orga_hc_siglas,
COUNT(anexo1.id)
FROM
anexo1
INNER JOIN entidadhc ON (anexo1.entidadhc_fk = entidadhc.id)
INNER JOIN orga_hc ON (entidadhc.orga_fk = orga_hc.id)
INNER JOIN provincia ON (entidadhc.provincia_fk = provincia.id)
WHERE
provincia.id='".$lista[$i]["id"]."'
GROUP BY
orga_hc.orga_hc_siglas

donde $lista es un arreglo de provincias, el objetivo es que me muestre de cada provincia los organismo que tiene y de cada organismo la cantidad de entidades, ahora, la consulta funciona divinamente, mi problema es a la hora de mostrarla en el html, como puedo devolver el select de esta consulta? muchas gracias
0

#2 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 23 April 2014 - 03:17 PM

Controller

public function actionIndex() {
$sql = "SELECT orga_hc.orga_hc_siglas as siglas, COUNT(anexo1.id) as count
FROM anexo1 ..............";
$rawData = Yii::app()->db->createCommand($sql)->queryAll();

$this->render('index', array(
'rawData'=>$rawData
));
}

View: index.php

<?php
foreach(rawData as $row) {
echo '<br>' . $row['siglas'] ;
echo '<br>' . $row['count'] ;
}
?>
If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
0

#3 User is offline   epulgaron 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 59
  • Joined: 19-February 14

Posted 23 April 2014 - 04:24 PM

gracias por lo que me mandastes, pero no me funciona, aqui te mando mi codigo para que mas o menos veas lo que estoy intendando hacer, quizas no sea la forma mas correcta pero hasta ahora me ha funcionado, el objetivo es que se me muestre despues del resultado de una busqueda, donde dinamicoProvOrg seria mi vista.

View PostDaniel Galvan, on 23 April 2014 - 03:17 PM, said:

Controller

public function actionIndex() {
$sql = "SELECT orga_hc.orga_hc_siglas as siglas, COUNT(anexo1.id) as count
FROM anexo1 ..............";
$rawData = Yii::app()->db->createCommand($sql)->queryAll();

$this->render('index', array(
'rawData'=>$rawData
));
}

View: index.php

<?php
foreach(rawData as $row) {
echo '<br>' . $row['siglas'] ;
echo '<br>' . $row['count'] ;
}
?>

Attached File(s)


0

#4 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 24 April 2014 - 04:56 PM

View Postepulgaron, on 23 April 2014 - 04:24 PM, said:

gracias por lo que me mandastes, pero no me funciona, aqui te mando mi codigo para que mas o menos veas lo que estoy intendando hacer, quizas no sea la forma mas correcta pero hasta ahora me ha funcionado, el objetivo es que se me muestre despues del resultado de una busqueda, donde dinamicoProvOrg seria mi vista.



1. OrgaHc::model()->findAllBySql($sql) te regresa un arreglo de ActiveRecord, no un array que es como lo quieres tratar.
(http://www.yiiframew...AllBySql-detail)

cambialo a:
$lista1 = Yii::app()->db->createCommand($sql)->queryAll();

esto te regresa un arreglo y cada resultado (row) es un arreglo
por lo que debes tratarlo de la siguiente forma:

foreach($lista1 as $lista) {
echo $lista['org'] . ' - ' . $lista['cant']. '<br>';
}

si el resultado de tu consulta siempre es un solo registro cambialo por:

$lista1 = Yii::app()->db->createCommand($sql)->queryRow();

el cual te regresa un solo resultado (row) en un arreglo y lo tratas asi:

echo $lista['org'] . ' - ' . $lista['cant'];
If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
0

#5 User is offline   Daniel Galvan 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 83
  • Joined: 04-March 12
  • Location:Mexico

Posted 28 April 2014 - 11:09 AM

View PostDaniel Galvan, on 24 April 2014 - 04:56 PM, said:

1. OrgaHc::model()->findAllBySql($sql) te regresa un arreglo de ActiveRecord, no un array que es como lo quieres tratar.
(http://www.yiiframew...AllBySql-detail)

cambialo a:
$lista1 = Yii::app()->db->createCommand($sql)->queryAll();

esto te regresa un arreglo y cada resultado (row) es un arreglo
por lo que debes tratarlo de la siguiente forma:

foreach($lista1 as $lista) {
echo $lista['org'] . ' - ' . $lista['cant']. '<br>';
}

si el resultado de tu consulta siempre es un solo registro cambialo por:

$lista1 = Yii::app()->db->createCommand($sql)->queryRow();

el cual te regresa un solo resultado (row) en un arreglo y lo tratas asi:

echo $lista['org'] . ' - ' . $lista['cant'];


Tuviste exito con este tema?, no olvides compartir.


Saludos
If my post was useful, Would you might give a vote +? / Si mi mensaje fue útil, ¿Le podrías dar un voto +?

Thanks / Gracias
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users