2013-05-27 20 views
0

我想,对每一个数字,它CALL_COUNT和持续时间都保存在单个阵列..这是我的表:如何从一个数组中的数据库获取多个列?

Number Call_count duration 
03455919448 4    14 
03215350700 2    35 

我想somethng这样的:

foreach($number as $number1) 
{ 
$data=array($row['call_count']<3,$row['duration']<20,1) 
} 

基本上我想对每个数它的计数和持续时间进行检查的一些值,如果他们符合条件,显示输出1 ...实际上我可以做到这一点与简单的if-else但因为我必须训练我的神经网络implementationaion数据集,所以所有行必须是在一个数组中?任何人都可以请我帮忙吗?

+0

什么是'$ number'和/或'$ number1' – Farkie

+0

使用PDO(纯MYSQL * funcions提交)和FETCH_TYPE设置为FETCH_ASSOC哪些会给你一个每行的列联合数组。[link](http://www.php.net/manual/en/book.pdo.php) – Hanut

+0

$ number是通过sql查询获取的数据库列,$ number1是临时变量作为其foreach循环的语法..它像:$ l = 0; $ number = $ row ['number']; \t $ num [$ l] = $ number; $ l ++; @Farkie –

回答

0

也许我不明白相当不错的代码,但是:

foreach($number as $number1) 

$ NUMBER1在你的foreach是从未使用过:

$data=array($row['call_count']<3,$row['duration']<20,1) 

所以我想$ NUMBER1是$行。

其次,它会帮助我,如果您提供您正在使用的SQL语句。

+0

$ number是通过SQL查询获取的数据库列和$ number1是临时变量作为其foreach循环的语法..它像:$ l = 0; $数= $行[ '数字']; $ NUM [$ 1] = $号码; $ L ++; –

0

你可以做这样的查询:

select Number, if(Call_count<3, if(duration<20, 1, 0), 0) as checked from tablename; 

这使您只有数字,和1如果满足这两个条件,否则为0。

之后,在PHP做一个循环

$data = array(); 
while ($row = mysql_fetch_assoc($result)) { // row will be an array with Number and checked as items 
    $data[] = $row; 
} 
// at this point you will have all rows in one array, with number and corresponding 1/0 in each item 
+0

是的,我可以这样做,但因为我早前叙述我需要这些数据来训练我的神经网络。为此,步骤是:1。最初,对于每个属性,分配一个阈值。 2.将训练数据集的属性值与属性的阈值进行比较,以声明客户是否会流失。如果...那么简单...其他规则适用于此过程。 3.然后为训练数据集构建一个模型。 4.然后将模型应用于测试数据集,并列出结果。 –

相关问题