Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
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 09/08/2006, 12h27   #1
Membre habitué
 
Avatar de seb.49
 
Développeur informatique
Inscription : octobre 2002
Messages : 273
Détails du profil
Informations personnelles :
Âge : 32

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : octobre 2002
Messages : 273
Points : 136
Points : 136
Par défaut Recherche à la google sur base SQL SERVER

Bonjour,

Je réfléchi à un outil genre "google" sur une base de données.

Il y aurai sur une page une zone de saisie ou en saisissant par exemple "DUPONT PARIS", je ressortirai toutes les info de ma bases en sachant que par exemple DUPONT serai cherché dans une table différente de celle ou est stocké PARIS.

A l'avance je ne sais pas ce que va chercher l'utilisateur.

Je pensais donc créer une autre table, voire une autre base ou je stockerai dans un champ les mots "DUPONT, PARIS, 75000, HORTICULTEUR" et tout ce qui pourrait être intéressant de rechercher (un code postal, un nom de rue, le prénom, la société...) avec une ID qui lui pointerait sur la table principale de ma base de données d'origine et ainsi permettre d'afficher les infos détaillées et organisées en cliquant sur un lien par exemple.

Que pensez vous de cette idée, avez vous déjà fait un truc similaire ... ?

Merci pour vos réponses.
seb.49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 17h15   #2
Modérateur
 
Avatar de al1_24
 
Homme Alain
Ingénieur d'études décisionnel
Inscription : mai 2002
Messages : 4 446
Détails du profil
Informations personnelles :
Nom : Homme Alain
Âge : 51
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études décisionnel
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 4 446
Points : 7 546
Points : 7 546
Citation:
Envoyé par seb.49
Je pensais donc créer une autre table, voire une autre base ou je stockerai dans un champ les mots "DUPONT, PARIS, 75000, HORTICULTEUR" et tout ce qui pourrait être intéressant de rechercher (un code postal, un nom de rue, le prénom, la société...) avec une ID qui lui pointerait sur la table principale de ma base de données d'origine et ainsi permettre d'afficher les infos détaillées et organisées en cliquant sur un lien par exemple.
Pourquoi créer une table... une vue suffirait.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    SELECT  'table1'        AS  table_id
        ,   'column1'       AS  col_id
        ,   t1_1.id         AS  line_id
        ,   t1_1.column1    AS  col_val
    FROM    table1  AS  t1_1
UNION
    SELECT  'table1'        AS  table_id
        ,   'column2'       AS  col_id
        ,   t1_2.id         AS  line_id
        ,   t1_2.column2    AS  col_val
    FROM    table1  AS  t1_2
UNION
    SELECT  'table2'        AS  table_id
        ,   'column1'       AS  col_id
        ,   t2_1.id         AS  line_id
        ,   t2_1.column1    AS  col_val
    FROM    table2  AS  t2_1
;
La recherche d'une valeur dans col_val retourne la liste des tables, colonnes et/ou lignes dans laquelle elle apparaît.
Après on fait tourner ça comme on veut...
__________________
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/08/2006, 18h12   #3
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
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 959
Points : 17 791
Points : 17 791
Il faut utiliser un mécanisme d'indexation textuelle. Celui de SQL Server (catalogue d'indexation textuelle) est un début. Si vous voulez en plus la correction, les synonymes et le scoring, il faut rajouter un dictionnaire complet avec ces éléments.
Lisez l'article que j'ai écrit sur le sujet :
http://sqlpro.developpez.com/cours/indextextuelle/

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é Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h30.


 
 
 
 
Partenaires

Hébergement Web