Heim  >  Artikel  >  Backend-Entwicklung  >  ThinkPHP-Abfrageanweisungen und Verwendung verwandter Abfragen

ThinkPHP-Abfrageanweisungen und Verwendung verwandter Abfragen

不言
不言Original
2018-06-08 10:44:571431Durchsuche

In diesem Artikel werden hauptsächlich die Verwendung von ThinkPHP-Abfrageanweisungen und zugehörigen Abfragen sowie gängige Abfragemethoden in Form von Beispielen vorgestellt, einschließlich Techniken wie Arrays als Abfragebedingungen und Objektmethoden zum Abfragen. Freunde in Not können sich darauf beziehen

Die Beispiele in diesem Artikel beschreiben die Verwendung von ThinkPHP-Abfrageanweisungen und zugehörigen Abfragen. Teilen Sie es als Referenz mit allen. Die Details sind wie folgt:

Auf der Thinkphp-Framework-Seite können wir SQL-Abfrageanweisungen direkt buchstabieren, um Lese- und Schreibvorgänge für Datenbankabfragen zu implementieren. Hier ist ein Beispiel, um dies zu veranschaulichen.

Zusätzlich zu String-Abfragebedingungen für normale Abfragen werden sehr häufig Array- und Objektabfragebedingungen verwendet, die für einfache Abfragen erforderlich sind.

1. Verwenden Sie Arrays als Abfragebedingungen

rrree

2. Verwenden Sie den Objektmodus, um ein beliebiges Objekt abzufragen

rrree

1. String-Form

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

2. Array-Form

$User = M("User"); // 实例化User对象
// 定义查询条件 $condition = new stdClass();
$condition->name = 'thinkphp';  // 查询name的值为thinkphp的记录
$User->where($condition)->select(); //  上面的查询条件等同于 where('name="thinkphp"') 使用对象方式查询和使用数组查询的效果是相同的,并且是可
带where条件的普通查询

Assoziative Abfrage zwischen zwei Tabellen:

$user=M('user');
$list=$user->where(&#39;id>5 and id<9&#39;)->select();
$list=$user->where($data)->select();

Intervall Abfrage

$user=M(&#39;user&#39;);
$list=$user->where(array(&#39;username&#39;=>&#39;www.jb51.net&#39;))->select();
$list=$user->where($data)->select();

Kombinierte Abfrage

$user=M(&#39;user&#39;);
$a=new stdClass();
$a->username=&#39;www.jb51.net;
$list=$user->where($a)->select();

Zusammengesetzte Abfrage

$M_shopping = M(&#39;Shops&#39;); 
$M_product = M(&#39;Product&#39;); 
$list_shops = $M_shopping->join(&#39;as shops left join hr_product as product on shops.product_id = product.p_id&#39;) 
->field(&#39;product.p_id,product.p_name,shops.product_amount,shops.product_id&#39;) 
->where("shops.user_cookie=&#39;".$_COOKIE[&#39;hr_think_userid&#39;]."&#39;") 
->group(&#39;shops.id&#39;) 
->select();

Zugehörige Abfrage von drei Datentabellen

$user=M(&#39;user&#39;);
$data[&#39;id&#39;]=array(array(&#39;gt&#39;,20),array(&#39;lt&#39;,23),&#39;and&#39;);
$list=$user->where($data)->select();

Abfragebedingungen von Datentabellen

① Folgendes wird direkt abgefragt Die Bedingung wird an der Stelle platziert, was das Schreiben der Bedingung erleichtert

$user=M(&#39;user&#39;);
$data[&#39;username&#39;]=&#39;pengyanjie&#39;;
$data[&#39;password&#39;]=array(&#39;eq&#39;,&#39;pengyanjie&#39;);
$data[&#39;id&#39;]=array(&#39;lt&#39;,30);
$data[&#39;_logic&#39;]=&#39;or&#39;;
$list=$user->where($data)->select();
dump($list);

② Zusätzlich zur obigen Methode gibt es auch eine Array-Methode

$user=M(&#39;user&#39;);
$data[&#39;username&#39;]=array(&#39;eq&#39;,&#39;pengyanjie&#39;);
$data[&#39;password&#39;]=array(&#39;like&#39;,&#39;p%&#39;);
$data[&#39;_logic&#39;]=&#39;or&#39;;
$where[&#39;_complex&#39;]=$where;
$where[&#39;id&#39;]=array(&#39;lt&#39;,30);
$list=$user->where($data)->select();

Das Obige ist das Ich hoffe, dass der gesamte Inhalt dieses Artikels für alle hilfreich ist. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website!

Verwandte Empfehlungen:

Das Assoziationsmodell von ThinkPHP


In ThinkPHP häufig verwendete Abfragesprache


Das obige ist der detaillierte Inhalt vonThinkPHP-Abfrageanweisungen und Verwendung verwandter Abfragen. 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