Heim > Datenbank > MySQL-Tutorial > Erweiterte Anwendungsbeispiele für MySQL-Limit

Erweiterte Anwendungsbeispiele für MySQL-Limit

黄舟
Freigeben: 2017-02-06 15:39:11
Original
1153 Leute haben es durchsucht

MySQL-Grenzeffizienz:

select `id`,`title`,`describle`,`created` from myvbga_table where click = xxx limit offset, limit; //总结:如果没有blob/text字段,单行记录比较小,可以把 limit 设大点,会加快速度。
Nach dem Login kopieren

Limit-Offset-Wert ist relativ klein:

select `id`,`title`,`describle`,`created` from vbga_table limit 10,10 //多次运行,时间保持在0.0004-0.0005之间
Select `id`,`title`,`describle`,`created` From vbga_table Where click >=(Select click From vbga_table Order By click limit 10,1) limit 10 
//多次运行,时间保持在0.0005-0.0006之间,主要是0.0006
Nach dem Login kopieren

Limit-Offset-Wert ist relativ groß:

select `id`,`title`,`describle`,`created` from vbga_table limit 10000,10 //多次运行,时间保持在0.0187左右
Select `id`,`title`,`describle`,`created` From vbga_table Where click >=(Select click From vbga_table Order By click limit 10000,1) limit 10
Nach dem Login kopieren

/ /Mehrmals ausführen, die Zeit bleibt bei etwa 0,0061, nur 1/3 des vorherigen. Es ist zu erwarten, dass Letzteres umso besser ist, je größer der Offset ist.

Mysql-Limit-Nutzung:

LIMIT-Klausel kann verwendet werden, um die SELECT-Anweisung zu zwingen, die angegebene Anzahl von Datensätzen zurückzugeben

SELECT `id`,`title`,`describle`,`created` FROM vbga_table LIMIT [offset,] rows | rows OFFSET offset
mysql> SELECT `id`,`title`,`describle`,`created` FROM vbga_table LIMIT 5,10; // 检索记录行 6-15 //为了检索从某一个偏移量到记录集的结束所有的记录行,
可以指定第二个参数为 -1:
mysql> SELECT `id`,`title`,`describle`,`created` FROM vbga_table LIMIT 95,-1; // 检索记录行 96-last. //如果只给定一个参数,它表示返回最大的记录行数目:
mysql> SELECT `id`,`title`,`describle`,`created` FROM vbga_table LIMIT 5; //检索前 5 个记录行 //换句话说,LIMIT n 等价于 LIMIT 0,n。
Nach dem Login kopieren


Beispiel für die Verwendung einer MySQL-Limit-Unterabfrage:

select `id`,`title`,`describle`,`created` from vbga_table where id in (select t.id from (select `id`,`title`,`describle`,`created` from vbga_table limit 10)as t)
Nach dem Login kopieren

MySQL-Limit-Offset-Nutzung:

SELECT keyword FROM `zjoe_table` WHERE advertiserid='59' order by keyword LIMIT 2 OFFSET 1; //比如这个SQL ,limit后面跟的是2条数据,offset后面是从第1条开始读取
Nach dem Login kopieren

~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~

SELECT `keyword` FROM `zjoe_table` WHERE advertid='59' ORDER BY keyword LIMIT 2,1; //In dieser SQL wird das Limit ab Punkt 2 gelesen, 1 Nachricht lesen .


Verwendung der Grenzvariablen in der gespeicherten MySQL-Prozedur

CREATE PROCEDURE Getble_table(_id int,_limit int)
BEGIN
PREPARE s1 FROM 'SELECT `id`,`title`,`describle`,`created` FROM ble_table WHERE Cityid=? ORDER BY sendtime DESC LIMIT ?';
set @a=_id;
set @b=_limit;
EXECUTE s1 USING @a,@b;
DEALLOCATE PREPARE s1;
END;
Nach dem Login kopieren


Hinweis: Sie muss dort verwendet werden, wo Parameter erforderlich sind übergeben werden. „?“, muss die Anweisung nach dem ersten FROM in „“ eingeschlossen werden.

Das Obige ist der Inhalt von MySQL, Limit und erweiterte Nutzung. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage