Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Php检查mysql数据库中字段之间的差异_Php_Mysql_Field - Fatal编程技术网

使用Php检查mysql数据库中字段之间的差异

使用Php检查mysql数据库中字段之间的差异,php,mysql,field,Php,Mysql,Field,我试图确定mysql数据库行之间的多个字段之间是否存在任何差异 例如,如果一行中的“名称”字段不同,则返回结果 最好的方法是什么 编辑: 比如说 Name AGE john smith 68 john smith 68 John M Smith 68 我想要一个脚本来检测第三行中的姓名是否与其他姓名不同,但要能够对姓名和年龄字段执行此操作,您首先必须考虑:与什么不同?您必须始终定义列应该具有的值。如果您想要所有不是68岁的“john smith”的行,您的声明如

我试图确定mysql数据库行之间的多个字段之间是否存在任何差异

例如,如果一行中的“名称”字段不同,则返回结果

最好的方法是什么

编辑:

比如说

Name          AGE
john smith    68
john smith    68
John M Smith  68

我想要一个脚本来检测第三行中的姓名是否与其他姓名不同,但要能够对姓名和年龄字段执行此操作,您首先必须考虑:与什么不同?您必须始终定义列应该具有的值。如果您想要所有不是68岁的“john smith”的行,您的声明如下:

SELECT * FROM table WHERE name <> "john smith" AND age <> 68;
$mysqli = new mysqli('hostname', 'username', 'password', 'database');

$query = 'SELECT * FROM table WHERE name <> "john smith" AND age <> 68';

if($result = $mysqli->query($query)){
    while($row = $result->fetch_assoc()){
        // do something with the results using $row['name'] and $row['age']
    }
}
从名为“john smith”且年龄为68岁的表格中选择*;
将返回与定义值不同的所有行

下面是一个非常基本的PHP代码示例:

SELECT * FROM table WHERE name <> "john smith" AND age <> 68;
$mysqli = new mysqli('hostname', 'username', 'password', 'database');

$query = 'SELECT * FROM table WHERE name <> "john smith" AND age <> 68';

if($result = $mysqli->query($query)){
    while($row = $result->fetch_assoc()){
        // do something with the results using $row['name'] and $row['age']
    }
}
$mysqli=newmysqli('hostname','username','password','database');
$query='从名为“john smith”和年龄为68'的表中选择*;
如果($result=$mysqli->query($query)){
而($row=$result->fetch_assoc()){
//使用$row['name']和$row['age']对结果进行处理
}
}

那么,您想对数据集进行分组,在这些数据集中,可以测量名称中的某个偏差,但年龄必须相等

因此,如果我正确理解了这一点: “年龄”不是一个可靠的值,因为人们一年变老一次,年龄就过时了。使用生日


“名字”:两个男孩可以在同一天出生。因此,需要更多的数据进行比较。如果名称是您所有的,那么您可以利用“Levenshtein距离”。这必须用存储过程实现,或者用php计算…

与什么不同?将哪些行与其他行进行比较?最好给出一些带有预期结果的样本数据,否则就不清楚您的确切意思。请详细解释年龄和姓名只是示例字段,我只是想做一个常规检查,看看是否彼此不同,或者之前的条目是否不同。例如,我有三个字段都具有递增ID,第3行与前两行不同。我需要能够检查所有的行,看看哪一行是不同的,等等,这只是我为了让这一点更清楚而做的假设。如果一个数据集足够相似,可能是另一个数据集的副本,或者完全不同,那么您需要足够的数据来得出明确的结论。