我面临着一个小问题,以获得价值。
在我的数据库中,值 48,53,40 ,我得到的值 48,40,53 。我想比较两个值并显示输出。两者都是相同的价值。只有序列不同。
任何人都可以帮助我????
答案 0 :(得分:2)
使用match-against
with boolean mode
并记住在列上添加全文索引以快速查询。
,例如 -
select * from temp_new where match(b) against('+48 +53 +40' in boolean mode);
答案 1 :(得分:0)
我想你会把它们放在一个字符串中。
你可以爆炸字符串,然后使用in_array()
:
<?php
$foo = '48,53,40';
$bar = '48,40,53';
function are_equal($foo, $bar, $separator = ','){
$foo = explode($separator, $foo);
$bar = explode($separator, $bar);
foreach($foo as $number){
if(!in_array($number, $bar)){
return FALSE;
}
}
return TRUE;
}
var_dump(are_equal($foo, $bar));
但当然,在这种情况下,DB重新设计会很健康!
答案 2 :(得分:0)
您应该使用array_diff而不是创建自己的。