OVH Cloud OVH Cloud

SQL2000 - Requette - identiques

2 réponses
Avatar
forthenewsonly
Bonjour,
j'ai un petit probleme en SQL, j'ai une table composant/composé,ayant cette
structure

CREATE TABLE [piece] (
[article] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[phase] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[composant] [varchar] (60) COLLATE French_CI_AS NOT NULL ,

etc... (d'autres colonnes non utiles dans ma problèmatique)
)

je sais qu'une autre strucutre serait plus appropriée (aborescence) mais je
n'ai pas créé cette table et je doit faire avec.

je rechere a comptabiliser les articles ayant strictement les memes
composants a la meme phase, bien sur chaque article a de 1 a N composant(s)
et il existe des cas ou pour deux articles ( A et B), B a tous les
composants de A plus quelques autres.

Afin de mieux me faire comprendre, voici un exemple de données
dans le même ordre de colonne que le create table
A,A01,CP01
A,A01,CP02
A,B02,CP03
A,B03,CP01
B,A01,CP01
B,A01,CP02
B,B02,CP03
B,B03,CP01
B,B03,CP04
C,A01,CP01
C,A01,CP02
C,B02,CP03
C,B03,CP01
D,A08,CP03
Nous avons A et C on les memes composants, B et D n'ayant pas de "jumeau"
je souhaite obtenir comme résultat l'article et le nombre d'article
identiques
dans mon exemple
A, 2
B, 1
C, 2
D, 1

Quelqu'un aurait il une idée, ou une solution, a mon problème ?
Merci
Jean-noël

2 réponses

Avatar
Fred BROUARD
1) attendre la version 2005 qui intègre les requêtes récursives
2) modéliser différement en utilisant la technique intervallaire de gestion des
arborescences.
3) implémenter un jeu de requête / sous requête par profondeur d'extraction et
niveau de départ (soit si 4 niveaux : 10 requêtes, 5 niveaux 15 requêtes, etc...)

A lire :
http://sqlpro.developpez.com/cours/arborescence/

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************

forthenewsonly a écrit:
Bonjour,
j'ai un petit probleme en SQL, j'ai une table composant/composé,ayant cette
structure

CREATE TABLE [piece] (
[article] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[phase] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[composant] [varchar] (60) COLLATE French_CI_AS NOT NULL ,

etc... (d'autres colonnes non utiles dans ma problèmatique)
)

je sais qu'une autre strucutre serait plus appropriée (aborescence) mais je
n'ai pas créé cette table et je doit faire avec.

je rechere a comptabiliser les articles ayant strictement les memes
composants a la meme phase, bien sur chaque article a de 1 a N composant(s)
et il existe des cas ou pour deux articles ( A et B), B a tous les
composants de A plus quelques autres.

Afin de mieux me faire comprendre, voici un exemple de données
dans le même ordre de colonne que le create table
A,A01,CP01
A,A01,CP02
A,B02,CP03
A,B03,CP01
B,A01,CP01
B,A01,CP02
B,B02,CP03
B,B03,CP01
B,B03,CP04
C,A01,CP01
C,A01,CP02
C,B02,CP03
C,B03,CP01
D,A08,CP03
Nous avons A et C on les memes composants, B et D n'ayant pas de "jumeau"
je souhaite obtenir comme résultat l'article et le nombre d'article
identiques
dans mon exemple
A, 2
B, 1
C, 2
D, 1

Quelqu'un aurait il une idée, ou une solution, a mon problème ?
Merci
Jean-noël




Avatar
forthenewsonly
Merci beaucoup pour votre réponse,
j'avais envisagé les points 2 et 3, puisque vous me confimé qu'il n'y a rien
de mieux, je vais explorer ces solutions

Bonne fin de journée

"Fred BROUARD" a écrit dans le message de news:

1) attendre la version 2005 qui intègre les requêtes récursives
2) modéliser différement en utilisant la technique intervallaire de
gestion des arborescences.
3) implémenter un jeu de requête / sous requête par profondeur
d'extraction et niveau de départ (soit si 4 niveaux : 10 requêtes, 5
niveaux 15 requêtes, etc...)

A lire :
http://sqlpro.developpez.com/cours/arborescence/

A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************

forthenewsonly a écrit:
Bonjour,
j'ai un petit probleme en SQL, j'ai une table composant/composé,ayant
cette structure

CREATE TABLE [piece] (
[article] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[phase] [varchar] (60) COLLATE French_CI_AS NOT NULL ,
[composant] [varchar] (60) COLLATE French_CI_AS NOT NULL ,

etc... (d'autres colonnes non utiles dans ma problèmatique)
)

je sais qu'une autre strucutre serait plus appropriée (aborescence) mais
je n'ai pas créé cette table et je doit faire avec.

je rechere a comptabiliser les articles ayant strictement les memes
composants a la meme phase, bien sur chaque article a de 1 a N
composant(s)
et il existe des cas ou pour deux articles ( A et B), B a tous les
composants de A plus quelques autres.

Afin de mieux me faire comprendre, voici un exemple de données
dans le même ordre de colonne que le create table
A,A01,CP01
A,A01,CP02
A,B02,CP03
A,B03,CP01
B,A01,CP01
B,A01,CP02
B,B02,CP03
B,B03,CP01
B,B03,CP04
C,A01,CP01
C,A01,CP02
C,B02,CP03
C,B03,CP01
D,A08,CP03
Nous avons A et C on les memes composants, B et D n'ayant pas de "jumeau"
je souhaite obtenir comme résultat l'article et le nombre d'article
identiques
dans mon exemple
A, 2
B, 1
C, 2
D, 1

Quelqu'un aurait il une idée, ou une solution, a mon problème ?
Merci
Jean-noël