0

我想在某个变量中获取数据库列值。我不想用

mysql_fetch_assoc
mysql_fetch_row
mysql_fetch_array
mysql_fetch_object

任何人。

我的桌子是:

+----------+-----------+
| ind_type | Index_val |
+----------+-----------+
| pcount   |       157 |
| ncount   |       210 |
+----------+-----------+

我想在某个变量中获得 157、210$x$y. 我在 PHP 中工作。 有人可以指导我。?

可以这样做$p= $mysqli->query('SELECT Index_val FROM view_name where ind_type=pcount');,然后遍历所有行以获取所有值。

但我只有两行,出于我的需要,我想手动获取Index_val. 如果有人可以解决它!

4

1 回答 1

1

那这个呢 ?

if ($p = $mysqli->prepare("SELECT max(CASE when ind_type= 'pcount' then Index_val end) as x , 
                                  max(CASE when ind_type= 'ncount' then Index_val end) as y
   FROM view_name ")){

    $p->execute(); 
    $p->store_result();
    $p->bind_result($x , $y);
    $p->fetch() ;
     }
    echo $x ."<br />". $y ;

其中 ind_type=pcount 那么在你的表中只会得到 157 是它唯一的匹配值。

编辑:

对于这两个值。要么你不需要条件,要么全部获取,要么做一个 OR 条件。

if ($p = $mysqli->prepare("SELECT Index_val FROM view_name where ind_type= ? OR ind_type= ? ")){
 $p->bind_param('ii', 'pcount' , 'ncount'); 
于 2013-09-30T16:53:50.303 回答