Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/03/2011, 15h49   #1
Invité de passage
 
Inscription : octobre 2005
Messages : 7
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 7
Points : 0
Points : 0
Par défaut Problème avec Sql

Bonjour,

J'ai une table qui contient toutes les informations concernant les employés mais chaque employé peut avoir plusieurs adresses.
Je voudrai avoir touts les employés avec une adresse par hazard car je connais pas quel adresse est valable.

quel est la fonction qu'on peut utiliser dans ce cas de figure.
henni est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/03/2011, 18h30   #2
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 953
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 953
Points : 17 773
Points : 17 773
Utilisez un sous requête en table dérivée avec une fonction de fenêtrage :

Code :
1
2
3
4
5
6
7
SELECT *
FROM
(
SELECT *, ROW_NUMBER() OVER(PRATITION BY emp_id) AS N
FROM  ...
) AS T
WHERE N = 1
A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 15/03/2011, 13h54   #3
Futur Membre du Club
 
Inscription : août 2009
Messages : 22
Détails du profil
Informations forums :
Inscription : août 2009
Messages : 22
Points : 15
Points : 15
Envoyer un message via Yahoo à dramanebox Envoyer un message via Skype™ à dramanebox
Par défaut Proposition

Salut,

Pour ce genre de situation, tu peux convenir à choisir entre 2 alternatives.

1- Faire un requête du genre retourner un à un le couple (employeur-adresse) donc les 2 identifiants en paramètres
Code :
SELECT id_empl,id_adress,designation_adress FROM employeur INNER JOIN adresse ON (id_empl=id_empl_adres) WHERE id_adress=&ID_DE_ADRESSE AND id_empl=&ID_DE_EMPL
2- Jouer sur le numéro de ligne de l'adresse (rowid,rownum...) pour retourner une ligne spécifique
Code :
SELECT id_empl,id_adress,designation_adress FROM employeur INNER JOIN (SELECT id_empl_adres ,id_adress,designation_adress FROM adresse) ON (id_empl=id_empl_adres) WHERE id_empl=&ID_EMPL AND ROWID/ROWNUM<=1
Quelques incorrections à apporter.

J'espère que ça fera effet.

^^
dramanebox est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/03/2011, 15h06   #4
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 953
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 953
Points : 17 773
Points : 17 773
ROID, ROWNUMBER n'existe pas en SQL. Ce sont des horreurs spécifiques à Oracle !

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h02.


 
 
 
 
Partenaires

Hébergement Web