Rechercher : dans
Par :

Patients qui n'habite pas lausanne SQL

Dernière réponse le 2 nov 2009 à 22:11:24 edimo, le 28 oct 2009 à 09:45:31 
 Signaler ce message aux modérateurs

Bonjour,

j ai un schema concernant une clinique et une partie concernant les patients. la question étant de savoir quels patients n'habitent pas lausanne. le problème est qu il y a aussi plusieurs code postaux comptant comme lausanne c est a dire le 1000,1003,1005 et 1018.

J ai essayer
SELECT Nom
FROM Patient(nom du tableau pour les patients)
WHERE Adresse NOT IN ('1000 Lausanne','1003 Lausanne','1005 Lausanne','Lausanne 1018')

Précision: exercice pour un cours d informatique, donc le schéma est deja fait donc il est possible que je me goure la dessus, mais je crois que c est plutôt 'l'ortographie' SQL qui m echappe un peu...

Merci pour toute aide et bonne journée!

Meilleures réponses pour « Patients qui n'habite pas lausanne SQL » dans :
SQL - Création de table Voir Le SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE...
Le langage SQL Voir Qu'appelle-t-on SQL? SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage de définition de données (LDD, ou en anglais DDL Data Definition Language), un langage de manipulation de données (LMD, ou en anglais DML,...
SQL - éviter les doublons dans un SELECT VoirProblème Comment éviter les doublons dans les résultats d'une requête SQL ? Solution Il suffit d'utiliser la clause DISTINCT entre SELECT et les champs. Exemple : SELECT distinct id,nom,prenom FROM matable Plus d'informations ...
Gestion des paramètres SQL VoirSQL présente un certain nombre de paramètres au niveau d'Oracle qu'il est possible de visualiser à travers la commande : SHOW ALL Pour modifier la valeur d'un paramètre il suffit d'utiliser la commande : SET NOM_PARAM VALEUR
Sauvegarde automatique d'une BDD sous SQL EXPRESS 2005 VoirSi vous vous voulez automatiser une sauvegarde d'une base de données sous SQL server express, il existe une solution simple grâce à un fichier .bat. Créez un nouveau fichier texte. Ce fichier doit contenir les informations suivantes: SET...
SQL - Commande SELECT VoirLe langage de manipulation de données Le SQL est à la fois un langage de manipulation de données et un langage de définition de données. Toutefois, la définition de données est l'oeuvre de l'administrateur de la base de données, c'est pourquoi la...
SQL - Tri VoirTri des résultats Il est possible en SQL d'organiser les résultats grâce à la clause ORDER BY. La clause ORDER BY est suivie des mots clés ASC ou DESC, qui précisent respectivement si le tri se fait de manière croissante (par défaut) ou...
PL/SQL - Introduction au langage PL/SQL VoirIntroduction au langage PL/SQL Le langage PL/SQL est un langage L4G (entendez par ce terme un langage de quatrième génération), fournissant une interface procédurale au SGBD Oracle. Le langage PL/SQL intègre parfaitement le langage SQL en lui...

1

J'ai oublié mon nick, le 28 oct 2009 à 11:16:22

Salut
pourquoi pas

SELECT Nom
FROM Patient
WHERE upper(Adresse) NOT like '%LAUSANNE%'

parce que l'idéal aurait quand même été de disposer d'une colonne code postal et d'une colonne Ville
mais tu vas me dire que ça aurait été trop simple...

a+

Répondre à J'ai oublié mon nick

2

swed, le 28 oct 2009 à 12:37:40

Bonjour,

"Pourquoi pas ?"
-> Parce que si le patient habite une ville appelée "LAUSANNELLE", il sera récupéré aussi.

On pourrait modifier le LIKE comme ca, ce serait déjà mieux :
SELECT Nom
FROM Patient
WHERE upper(Adresse) NOT like '% LAUSANNE'

Mais, ca ne fonctionnera pas si le patient habite une ville appelée "TARTE SOUS LOSANNE"...

Le mieux est donc de tester l'égalité en enlevant les 6 premiers caractères de la chaine :
SELECT Nom
FROM Patient
WHERE RIGHT(UPPER(Adresse), LEN(Adresse) - 6) = 'LAUSANNE'

(Jai pas testé mais ca doit être correct).

Mais effectivement, séparer le code postal et la ville serait le mieux...

Répondre à swed

3

 edimo, le 2 nov 2009 à 22:11:24

Bonsoir,

je vous remercie beaucoup pour votre aide! Après pas mal de temps passer à chercher ma réponse sur internet ou dans des livres j'ai découvert qu'il fallait utiliser l'ordre NOT LIKE '%Lausanne'.

Encore une fois merci, je sais que si j ai encore des questions sympa de mon cours d'informatique je viendrai les poser içi :)

Bonne soirée!

Répondre à edimo
Collection CommentÇaMarche.net