Mysql多选查询

I have 600.000 data and I strain the values. I strain some values in my database. I have 10 criterion about strain data. So , When i strain the 600.000 Data from 10 criterion my mysql server is very slow.How can I make it fast ? This is my source code about strain.

$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
ini_set('memory_limit', '256M');
function Check($Value,$DataBase)
{

    $QueryString = "SELECT UserID FROM users where ".$Value;
    $query = $DataBase->query($QueryString, PDO::FETCH_ASSOC);
    //echo $Sorgu;
    if ($query->rowCount()) {
        foreach ($query as $row) {
            return true;
        }
    }
    return false;
}

$Array = $_POST["Data"];
$Array = json_decode($Array, true);

$Keys = ' ';
$Values = ' ';
$GSM1 = array();
$GSM2 = array();
$Phone1 = array();
$Phone2 = array();
$Fax1 = array();
$Fax2= array();
$UserCode = array();
$Identitiy = array();
$Empty = array();
$EmptyCheck = true;
foreach ($Array as $Row) {
    $EmptyCheck = true;
    $Keys = ' ';
    $Values = ' ';
    foreach ($Row as $key => $val) {


        if ($key == 'UserGsm1') {
            if ($val != null AND is_numeric($val) AND Check('UserGsm1=' . $val,$db)) {
                $EmptyCheck = false;
                $Gsm1[] = $Row;
                break;
            }
        } else if ($key == 'UserGsm2') {
            if ($val != null AND is_numeric($val) AND Check('UserGsm2=' . $val,$db)) {
                $EmptyCheck = false;
                $Gsm2[] = $Row;
                break;
            }
        } else if ($key == 'UserPhone1') {
            if ($val != null AND is_numeric($val) AND Check('UserPhone1=' . $val,$db)) {
                $EmptyCheck = false;
                $Phone1[] = $Row;
                break;
            }
        } else if ($key == 'UserPhone2') {
            if ($val != null AND is_numeric($val) AND Check('UserPhone2=' . $val,$db)) {
                $EmptyCheck = false;
                $Phone2[] = $Row;
                break;
            }
        } else if ($key == 'UserFax1') {
            if ($val != null AND is_numeric($val) AND Check('UserFax1=' . $val,$db)) {
                $EmptyCheck = false;
                $Fax1[] = $Row;
                break;
            }
        } else if ($key == 'UserFax2') {
            if ($val != null AND is_numeric($val) AND Check('UserFax2=' . $val,$db)) {
                $EmptyCheck = false;
                $Fax2[] = $Row;
                break;
            }
        } else if ($key == 'UserCode') {
            if ($val != null AND is_numeric($val) AND Check('UserCode=' . $val,$db)) {
                $EmptyCheck = false;
                $UserCode[] = $Row;
                break;
            }
        } else if ($key == 'UserIdentitiy') {
            if ($val != null AND is_numeric($val) AND Check('UserIdentitiy=' . $val,$db)) {
                $EmptyCheck = false;
                $Identitiy[] = $Row;
                break;
            }
        }
        $Keys = $Keys . ',' . $key;
        $Values = $Values . ',' . $val;
        //echo $key.' : '.$val;
        //echo '<br>';
    }
    if ($EmptyCheck == true) {
        $Empty[] = $Row;
    }


}