Maison >base de données >tutoriel mysql >Méthodes de requête conjointe multi-tables SQL Server et de requête de pagination multi-tables (exemple de code)

Méthodes de requête conjointe multi-tables SQL Server et de requête de pagination multi-tables (exemple de code)

不言
不言avant
2019-01-12 11:23:5910098parcourir

Le contenu de cet article concerne les méthodes de requête conjointe multi-tables SQL Server et de requête de pagination multi-tables (exemples de code). Il a une certaine valeur de référence. . , j'espère que cela vous aidera.

Requête conjointe multi-tables :

select p.*,s.Sheng , i.Shi
from  [dbo].[ProductRecordInfo]   --表名 
p left join [ShengInfo] s on p.ShengInfo = s.ShengId   --使用left join左连接 让两个表中的指定字段产生连接关系
left join [ShiInfo] i on p.ShiInfo = i.ShiId          --使用left join左连接 让三个表中的指定字段产生连接关系

Ce qui est ici est similaire à où, et les conditions suivantes peuvent être écrites par vous-même (cours recommandé : Tutoriel MySQL)

Les résultats d'exécution sont les suivants :

Instruction SQL de pagination :

Utilisez la fonction row_number() pour la numérotation

select * from (select ROW_NUMBER() over (order by Id ASC) as IDD ,*from ProductRecordInfo) a where a.IDD>=1 and a.IDD<=3

Premier tri par identifiant. Après le tri, numérotez chaque élément de données.

Dans cette instruction, la fonction ROW_NUMBER() numérotera chaque ligne renvoyée par l'instruction SELECT en commençant par 1 et lui donnera un numéro consécutif. Après avoir appliqué un critère de tri lors de la requête, seule la numérotation peut garantir la cohérence de l'ordre. Lors de l'utilisation de la fonction ROW_NUMBER, une colonne spéciale est également nécessaire pour le pré-tri afin de faciliter la numérotation

Les résultats sont les suivants. suit :

Enfin, si vous souhaitez utiliser ADO pour afficher la fonction de pagination, vous devez combiner une requête de jointure multi-table avec une pagination . Les déclarations épissées sont les suivantes :

select * from(
   select *, ROW_NUMBER() OVER(order by Id asc) row from 
     (select p.*,s.Sheng,i.Shi,a.PinPai 
from  [dbo].[ProductRecordInfo] 
p left join [ShengInfo] s on p.ShengInfo = s.ShengId 
left join [ShiInfo] i on p.ShiInfo = i.ShiId 
left join[dbo].[PinPaiInfo] a on p.PinPaiInfo=a.Aid)t1)t2 
where t2.Row between 1 and 3

Le résultat est le suivant :

<.>

Remarque : nous utiliserons certainement ces mots-clés SQL lors de l'exécution de requêtes conjointes sur plusieurs tables de la base de données. Si nous ne comprenons pas leurs différences, nous ne pourrons pas le faire. écrire les conditions de requête requises pour notre projet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer