IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Firebird Discussion :

Filtre en SQL


Sujet :

SQL Firebird

  1. #1
    Membre actif
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Points : 288
    Points
    288
    Par défaut Filtre en SQL
    Bonsoir,

    Données :

    J'ai une table qui contient le personnel d'une boite autour de laquelle gravitent plusieurs autres tables telles que Absences, Salires, Prêts, Carrières etc ..

    La question :

    Je voudrais placer un filtre (en SQL), à la disposition de l'utilisateur, sur la table Personnel sur les infos qu'elle contient mais aussi sur les infos contenues dans les tables sus-citées.

    Est-il judicieux de joindre toutes les tables ou bien y aurait-il une meilleure idée ? Je pense aux délais de réponses.


    Merci.

    W7, D7, FB2.5, Zeos 7.1.2

  2. #2
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 784
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 784
    Points : 5 915
    Points
    5 915
    Par défaut
    Bonjour,
    Citation Envoyé par akli_agha Voir le message
    Données :

    J'ai une table qui contient le personnel d'une boite autour de laquelle gravitent plusieurs autres tables telles que Absences, Salires, Prêts, Carrières etc ..

    La question :

    Je voudrais placer un filtre (en SQL), à la disposition de l'utilisateur, sur la table Personnel sur les infos qu'elle contient mais aussi sur les infos contenues dans les tables sus-citées.

    Est-il judicieux de joindre toutes les tables ou bien y aurait-il une meilleure idée ? Je pense aux délais de réponses.
    Il manque quelques informations complémentaires :

    Les données affichées restent elles les mêmes quelque soit la (ou les) condition de filtre ?
    Les critères de filtre sont ils mutuellement exclusifs ou possiblement associatifs ?
    Quel est le volume maximal de données qui pourraient être extraites hors filtre (le nombre de personnes en l'occurrence, 10, 100, 1000, 10000, 100000, +) ?
    Philippe.

  3. #3
    Membre actif
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Points : 288
    Points
    288
    Par défaut
    Bonjour,

    . Juste un simple affichage à l'aide du couple Query/DBGrid
    . Les filtres sont inclusifs (env. 20 critères) au choix de l'utilisateur
    . Volume env. 100 000 enreg.
    Merci

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 955
    Points
    40 955
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Query, DBGrid, Filtre des termes Delphi qui n'ont pas grand choses à voir avec Firebird sensu-stricto !
    maintenant s'il s'agit d'avoir
    les sur la table Personnel sur les infos qu'elle contient mais aussi sur les infos contenues dans les tables sus-citées.
    sans que l'utilisateur ait à faire les jointures etc... et que pour le programme soit facile à lire une vue (VIEW) est certainement à envisager, à moins qu'une PROCEDURE paramétrée renvoyant des données , voire une combinaison des deux ? la vue créant le BLR nécessaire pour l'ensemble des données , la procédure la partie traitement de la clause WHERE (le "filtre")
    évidemment, comme si je le présume tous les critères ne sont pas toujours donnés, dans cette procédure il y aura certainement un EXECUTE STATEMENT à faire
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  5. #5
    Membre actif
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Points : 288
    Points
    288
    Par défaut
    Delphi oui mais avec une base FB !

    En fait, les requêtes, c'est moi qui les mets en place. L'utilisateur saisira ses choix dans des zones de saisie contenues dans une forme.

    Dois-je comprendre que je dois prévoir dans des SP et Views tous les cas de figure en plus des clauses WHERE ?


    Merci.

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 955
    Points
    40 955
    Billets dans le blog
    62
    Par défaut
    [QUOTE=akli_agha;8622238]Delphi oui mais avec une base FB ![QUOTE]
    exact mais il s'agit d'une question de codage pas de comportement Firebird ou de SQL sensu stricto

    soit via delphi ,
    on utilise un bout de code qui va créer la requête
    plusieurs solutions selon les composants utilisés :
    - macros si possibilité (et avec ZEOS c'est le cas)
    - format dans le cas contraire
    En fait, les requêtes, c'est moi qui les mets en place.
    Comme c'est vous qui les faites c'est à vous de voir
    L'utilisateur saisira ses choix dans des zones de saisie contenues dans une forme.
    donc la requête en code dans le programme Delphi sera paramétrée

    Soit on prépare une partie qui va se faire sur le serveur donc via Firebird
    et dans ce cas on va utiliser vues et/ou procédures
    et ,pour interroger la vue ou la procedure, via Delphi, on utilisera là également une requête paramétrée

    Dois-je comprendre que je dois prévoir dans des SP et Views tous les cas de figure en plus des clauses WHERE ?
    ce n'est pas ce que j'ai écrit mais il faut considérer une ou deux choses dont le temps d'exécution et la charge serveur
    le fait que la vue comme la procédure seront des élément compilés et prêts ne sont pas à négliger surtout s'il s'agit de requêtes complexes
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Membre actif
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Points : 288
    Points
    288
    Par défaut
    Ok, merci Sergio pour tes précieux conseils.

    Je m'y mettrai.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Filtre comme SQL ?
    Par Ledobs dans le forum Power BI
    Réponses: 2
    Dernier message: 17/06/2011, 16h03
  2. Réponses: 4
    Dernier message: 26/02/2008, 09h55
  3. Filtre complex SQL
    Par seven077 dans le forum Requêtes
    Réponses: 3
    Dernier message: 28/01/2008, 09h44
  4. Filtre requete SQL
    Par zizou771 dans le forum SQL
    Réponses: 1
    Dernier message: 26/12/2007, 16h18
  5. Filtre ou requête SQL ?
    Par obon dans le forum Bases de données
    Réponses: 1
    Dernier message: 08/05/2005, 19h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo