私はCodeIgniterモデルで以下のコードを使用して、データベースからデータをプルしています。ただし、私のデータベースには2つのCust_Phoneフィールドがあります。ユーザーが番号を入力したときに電話フィールドが検索されるように設定したいと思います。私は、次のようなsimeを使用してmysqlクエリでこれを行う方法があると思います
select distinct Phone from
(SELECT Cust_Phone1 AS Phone
FROM Customer
UNION
SELECT Cust_Phone2 AS Phone
FROM Customer) as t where Phone <> ''
私の他のselectクエリの内部ですが、これをどのように実行するか、または適切な方法で実行しているかどうかがわかりません。
---CodeIgniterモデル関数---
public function customerQuery($First,$Last,$Zip,$Phone) {
$sql = "SELECT * FROM Customer WHERE Cust_First LIKE ? AND Cust_Last LIKE ? AND Cust_Zip LIKE ? AND Cust_Phone1 Like ?";
if($First == null || $First == '') {
$First = '%';
}else{
$First = '%' . $First . '%';
}
if($Last == null || $Last == '') {
$Last = '%';
}else{
$Last = '%' . $Last . '%';
}
if($Zip == null || $Zip == '') {
$Zip = '%';
}else{
$Zip = '%' . $Zip . '%';
}
if($Phone == null || $Phone == '') {
$Phone = '%';
}else{
$Phone = '%' . $Phone . '%';
}
$query = $this->db->query($sql, array($First,$Last,$Zip,$Phone));
return $query->result();
}