Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie eine Mehrfeld-Fuzzy-Matching-Abfrage in PHP

So implementieren Sie eine Mehrfeld-Fuzzy-Matching-Abfrage in PHP

墨辰丷
墨辰丷Original
2018-05-30 09:27:583211Durchsuche

In diesem Artikel wird hauptsächlich die Methode zur Implementierung von Mehrfeld-Fuzzy-Matching-Abfragen in PHP vorgestellt und die zugehörigen Modelloperationen und SQL-Anweisungen von PHP für Fuzzy-Matching-Abfragen in Form von Beispielen analysiert >

Einführung: Manchmal muss die Abfrage mit mehreren Feldern übereinstimmen. Wenn Sie beispielsweise eine Adresse abfragen, besteht die Adresse aus mehreren Feldern. Es gibt Provinzen, Städte, Bezirke usw. sowie detaillierte Adressen. Wie wird zu diesem Zeitpunkt abgefragt?


Implementieren Sie die gleichen Abfragebedingungen für verschiedene Felder

$User = M("User"); // 实例化User对象
$map['name|title'] = 'thinkphp';
// 把查询条件传入查询方法
$User->where($map)->select();

Verwenden Sie es im Projekt

if ($address) {
  // 地址查询
  $where['b.province|b.city|b.area|b.detail'] = array('like', '%'.$address.'%');
        $this->assign('address', $address);
}

Diese Anforderung wird sehr einfach und sehr genau gelöst.

Die generierte SQL-Anweisung lautet wie folgt

SELECT a.*,b.name,b.tel,b.province,b.city,b.area,b.detail,b.zipcode
FROM sh_order a
LEFT JOIN sh_member_address b on a.member_id = b.member_id and b.selected = 1
WHERE ( `store_id` = '10' ) AND ( a.member_id IN ('7') ) AND ( (b.province LIKE '%宿城区%') OR (b.city LIKE '%宿城区%') OR (b.area LIKE '%宿城区%') OR (b.detail LIKE '%宿城区%') )
ORDER BY addtime desc, sendtime asc, paytime desc
LIMIT 0,10

Wie aus der SQL-Anweisung ersichtlich ist, sind die Klammern AND und OR in where sind sehr geschickt kombiniert.

Die Screenshots sind wie folgt

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er wird für alle hilfreich sein Studie.


Verwandte Empfehlungen:

PHP implementiert die zufällige Erfassung von Domainnamen, die nicht von WeChat blockiert werden

phpSo implementieren Sie die Dateiverwaltung und grundlegende Funktionsoperationen

Detaillierte Erläuterung des Funktionsbeispiels zur Erkennung von Anmeldezeitüberschreitungen in PHP

Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine Mehrfeld-Fuzzy-Matching-Abfrage in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn