Maison base de données tutoriel mysql [搜片神器]服务器SQL2005查询分页语句你理解了么

[搜片神器]服务器SQL2005查询分页语句你理解了么

Jun 07, 2016 pm 05:38 PM
分页 服务器 查询 Artefact 语句

在h31bt.com网站准备采用Lucence.net来进行索引处理搜索慢问题的时候,突然发现常用的分页获取数据的row_number也支持不住了,后期查到200多万的时候非常慢(总数据有500万),经过网上查询分析一些资料后,基本上搞明白是什么原因导致的,顺便纪录一下解决方

在h31bt.com网站准备采用Lucence.net来进行索引处理搜索慢问题的时候,突然发现常用的分页获取数据的row_number也支持不住了,后期查到200多万的时候非常慢(总数据有500万),经过网上查询分析一些资料后,基本上搞明白是什么原因导致的,顺便纪录一下解决方案。

------------------------------------

网上找的几种sqlserver2005高效分页sql查询语句
top方案:
sql codeselect top 10 * from table1
where id not in(select top 开始的位置 id from table1)

max:
sql codeselect top 10 * from table1
where id>(select max(id)
from (select top 开始位置 id from table1order by id)tt)

row:
sql codeselect *
from (
select row_number()over(order by tempcolumn)temprownumber,*
from (select top 开始位置+10 tempcolumn=0,* from table1)t
)tt
where temprownumber>开始位置
3种分页方式,分别是max方案,top方案,row方案

效率:
第1:row
第2:max
第3:top

缺点:
max:必须用户编写复杂sql,不支持非唯一列排序
top:必须用户编写复杂sql,不支持复合主键
row:不支持sqlserver2000

测试数据:
共320万条数据,每页显示10条数据,分别测试了2万页、15万页和32万页。

页码,top方案,max方案,row方案
2万,60ms,46ms,33ms
15万,453ms,343ms,310ms
32万,953ms,720ms,686ms

-----------------------------------------------

个人也是经常采用row_number来解决问题的,但是主键是以ID为主的,这次数据库表不是ID主键,,

如果使用ID来进行获取200万后面的200条数据,发现服务器上需要几分钟都不一定出来得结果

select * from (select *,row_number() over(order by ID asc) as RowNum from H31_DHT_TYPE_101_1) as a where RowNum between 2000000 and 2000200

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment vérifier vos diplômes universitaires sur Xuexin.com Comment vérifier vos diplômes universitaires sur Xuexin.com Mar 28, 2024 pm 04:31 PM

Comment vérifier mes diplômes universitaires sur Xuexin.com ? Vous pouvez vérifier vos diplômes universitaires sur Xuexin.com. De nombreux utilisateurs ne savent pas comment vérifier leurs diplômes universitaires sur Xuexin.com. Ensuite, l'éditeur vous propose un didacticiel graphique sur la façon de vérifier vos diplômes universitaires sur Xuexin.com. les utilisateurs viennent jeter un oeil ! Tutoriel d'utilisation de Xuexin.com : Comment vérifier vos diplômes universitaires sur Xuexin.com 1. Entrée Xuexin.com : https://www.chsi.com.cn/ 2. Requête sur le site Web : Étape 1 : Cliquez sur l'adresse Xuexin.com ci-dessus pour accéder à la page d'accueil Cliquez sur [Requête sur l'éducation] ; Étape 2 : Sur la dernière page Web, cliquez sur [Requête] comme indiqué par la flèche dans la figure ci-dessous. Étape 3 : Cliquez ensuite sur [Connexion au fichier de crédits académiques] sur la nouvelle page ; Étape 4 : Sur la page de connexion, saisissez les informations et cliquez sur [Connexion] ;

Guide des meilleures pratiques pour créer des serveurs proxy IP avec PHP Guide des meilleures pratiques pour créer des serveurs proxy IP avec PHP Mar 11, 2024 am 08:36 AM

Dans la transmission de données sur réseau, les serveurs proxy IP jouent un rôle important, aidant les utilisateurs à masquer leurs véritables adresses IP, à protéger la confidentialité et à améliorer la vitesse d'accès. Dans cet article, nous présenterons le guide des meilleures pratiques sur la façon de créer un serveur proxy IP avec PHP et fournirons des exemples de code spécifiques. Qu'est-ce qu'un serveur proxy IP ? Un serveur proxy IP est un serveur intermédiaire situé entre l'utilisateur et le serveur cible. Il agit comme une station de transfert entre l'utilisateur et le serveur cible, transmettant les demandes et les réponses de l'utilisateur. En utilisant un serveur proxy IP

12306 Comment vérifier l'historique des enregistrements d'achat de billets Comment vérifier l'historique des enregistrements d'achat de billets 12306 Comment vérifier l'historique des enregistrements d'achat de billets Comment vérifier l'historique des enregistrements d'achat de billets Mar 28, 2024 pm 03:11 PM

Téléchargez la dernière version de l'application de réservation de billets 12306. C'est un logiciel d'achat de billets de voyage dont tout le monde est très satisfait. Il est très pratique d'aller où vous voulez. Il existe de nombreuses sources de billets fournies dans le logiciel. -authentification par nom pour acheter des billets en ligne. Tous les utilisateurs Vous pouvez facilement acheter des billets de voyage et des billets d'avion et profiter de différentes réductions. Vous pouvez également commencer à réserver à l'avance pour récupérer des billets. Vous pouvez réserver des hôtels ou des transferts spéciaux en voiture. Grâce à lui, vous pouvez aller où vous voulez et acheter des billets en un seul clic. Voyager est plus simple et plus pratique, ce qui rend l'expérience de voyage de chacun. plus confortable. Désormais, l'éditeur le détaille en ligne. Offre à 12306 utilisateurs un moyen de consulter l'historique des achats de billets. 1. Ouvrez Railway 12306, cliquez sur Mon dans le coin inférieur droit, puis cliquez sur Ma commande. 2. Cliquez sur Payé sur la page de commande. 3. Sur la page payante

Comment configurer Dnsmasq comme serveur relais DHCP Comment configurer Dnsmasq comme serveur relais DHCP Mar 21, 2024 am 08:50 AM

Le rôle d'un relais DHCP est de transmettre les paquets DHCP reçus vers un autre serveur DHCP du réseau, même si les deux serveurs se trouvent sur des sous-réseaux différents. En utilisant un relais DHCP, vous pouvez déployer un serveur DHCP centralisé dans le centre réseau et l'utiliser pour attribuer dynamiquement des adresses IP à tous les sous-réseaux/VLAN du réseau. Dnsmasq est un serveur de protocole DNS et DHCP couramment utilisé qui peut être configuré en tant que serveur relais DHCP pour faciliter la gestion des configurations d'hôtes dynamiques sur le réseau. Dans cet article, nous allons vous montrer comment configurer Dnsmasq comme serveur relais DHCP. Sujets de contenu : Topologie du réseau Configuration d'adresses IP statiques sur un relais DHCP D sur un serveur DHCP centralisé

Que dois-je faire si je ne peux pas accéder au jeu lorsque le serveur Epic est hors ligne ? Solution pour laquelle Epic ne peut pas accéder au jeu hors ligne Que dois-je faire si je ne peux pas accéder au jeu lorsque le serveur Epic est hors ligne ? Solution pour laquelle Epic ne peut pas accéder au jeu hors ligne Mar 13, 2024 pm 04:40 PM

Que dois-je faire si je ne peux pas accéder au jeu lorsque le serveur Epic est hors ligne ? Ce problème a dû être rencontré par de nombreux amis. Lorsque cette invite apparaît, le jeu authentique ne peut pas être démarré. Ce problème est généralement dû à des interférences du réseau et du logiciel de sécurité. Alors, comment doit-il être résolu ? J'aimerais partager la solution avec vous, j'espère que le didacticiel logiciel d'aujourd'hui pourra vous aider à résoudre le problème. Que faire si le serveur Epic ne peut pas accéder au jeu lorsqu'il est hors ligne : 1. Il peut être interféré par un logiciel de sécurité. Fermez la plateforme de jeu et le logiciel de sécurité, puis redémarrez. 2. La seconde est que le réseau fluctue trop. Essayez de redémarrer le routeur pour voir s'il fonctionne. Si les conditions sont correctes, vous pouvez essayer d'utiliser le réseau mobile 5g pour fonctionner. 3. Alors il y en aura peut-être plus

Comment vérifier la date d'activation sur le téléphone mobile Apple Comment vérifier la date d'activation sur le téléphone mobile Apple Mar 08, 2024 pm 04:07 PM

Si vous souhaitez vérifier la date d'activation à l'aide d'un téléphone mobile Apple, le meilleur moyen est de la vérifier via le numéro de série du téléphone mobile. Vous pouvez également la vérifier en visitant le site officiel d'Apple, en le connectant à un ordinateur et en en téléchargeant un troisième. -logiciel de fête pour le vérifier. Comment vérifier la date d'activation du téléphone mobile Apple Réponse : requête de numéro de série, requête sur le site officiel d'Apple, requête sur ordinateur, requête sur un logiciel tiers 1. La meilleure façon pour les utilisateurs est de connaître le numéro de série de leur téléphone mobile. le numéro de série en ouvrant Paramètres, Général, À propos de cette machine. 2. Grâce au numéro de série, vous pouvez non seulement connaître la date d'activation de votre téléphone mobile, mais également vérifier la version du téléphone mobile, l'origine du téléphone mobile, la date d'usine du téléphone mobile, etc. 3. Les utilisateurs visitent le site Web officiel d'Apple pour trouver une assistance technique, trouvent la colonne de service et de réparation en bas de la page et y vérifient les informations d'activation de l'iPhone. 4. Utilisateur

Comment installer l'extension PHP FFmpeg sur le serveur ? Comment installer l'extension PHP FFmpeg sur le serveur ? Mar 28, 2024 pm 02:39 PM

Comment installer l’extension PHPFFmpeg sur le serveur ? L'installation de l'extension PHPFFmpeg sur le serveur peut nous aider à traiter les fichiers audio et vidéo dans les projets PHP et à implémenter des fonctions telles que l'encodage, le décodage, l'édition et le traitement des fichiers audio et vidéo. Cet article explique comment installer l'extension PHPFFmpeg sur le serveur, ainsi que des exemples de code spécifiques. Tout d’abord, nous devons nous assurer que PHP et FFmpeg sont installés sur le serveur. Si FFmpeg n'est pas installé, vous pouvez suivre les étapes ci-dessous pour installer FFmpe

Comparaison des similitudes et des différences entre MySQL et PL/SQL Comparaison des similitudes et des différences entre MySQL et PL/SQL Mar 16, 2024 am 11:15 AM

MySQL et PL/SQL sont deux systèmes de gestion de bases de données différents, représentant respectivement les caractéristiques des bases de données relationnelles et des langages procéduraux. Cet article comparera les similitudes et les différences entre MySQL et PL/SQL, avec des exemples de code spécifiques à illustrer. MySQL est un système de gestion de bases de données relationnelles populaire qui utilise le langage de requête structuré (SQL) pour gérer et exploiter des bases de données. PL/SQL est un langage procédural unique à la base de données Oracle et est utilisé pour écrire des objets de base de données tels que des procédures stockées, des déclencheurs et des fonctions. même

See all articles