REQUETTE avec POSTGRESQL "fonction"

REQUETTE avec POSTGRESQL "fonction" - SQL/NoSQL - Programmation

Marsh Posté le 27-07-2002 à 02:15:12    

SAlut,
 
j'ai un petit souci, j'ai betement prete ma doc alors que j'en ai besoin...
 
voila mon probleme
 
J'ai des tables admetons table_a table_b ... table_e
toutes ayant au moins les 2 champs ref & cor (varchar)
 
je veux faire une requete de style recherche
 
recherche('097415864';) me renverrai la valeur[cor] a partir de [ref] sachant que 2 reference identiques sont impossible, je voudrais que cette recherche se fasse sur certaines tables voir toutes.
 
 CREATE FUNCTION recheche(text)
 RETURNS texte
 'SELECT ref  
 FROM table_a,table_b etc....
 WHERE ref.table_a=$1 or ref.table_b=$1;
 RETURN cor;
 
Je ne me rappelle plus trop des syntaxes et en particulier pour plusieurs tables...comment faire ca ?
 
 
 


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Marsh Posté le 27-07-2002 à 02:15:12   

Reply

Marsh Posté le 29-07-2002 à 01:36:01    

up pour vous donner plus de details sur les essais deja faits...
 [:zoor] je trouve pas et en plus j'ai  [:zoub]  
 [:vitom] prete mes bouquins...ouinnn :gun:  
Je cherche a faire une recherche sur tous les champs de toute les tables comment faire ca ?
Au pire je peux me contanter de le faire sur les champs communs a toutes les tables uniquement...
 
structure des tables :
tit varchar
det varchar
ref varchar
com varchar
+des champs n'existant que selon les tables
 
Tous les champs sont de type varchar
tit & ref existent dans toutes les tables.
Il n'existe ni n'existera jamais de doublons.
_______________________________________________________________
 
J'ai essayer de faire des recherche sur le mot 'test'  
SELECT * ( (
SELECT * FROM tabl-test WHERE tit='test' or det='test)
SELECT * FROM tabl-prod WHERE tit='test' or det='test)
...
SELECT * FROM tabl-hist WHERE tit='test' or det='test)
SELECT * FROM tabl-log1 WHERE tit='test' or det='test)
SELECT * FROM tabl-log2 WHERE tit='test' or det='test)
);
 
J'ai essayer de faire des union all sur plusieurs select...
 
pas mieux...
_______________________________________________________________
 
J'ai essayer egalement de faire un fonction mais la ca a ete une catastrophe la fonction me disais bien qu'elle trouvait l'info mais impossible de la formater de sorte a ce qu'elle soit lisible...
 
AU SECOURS...
 
 [:yamusha]  
 
[g]MAIS EN FAIT, IDEALEMENT,  JE VOUDRAI FAIRE UNE FONCTION DE SORTE A:
pouvoir interroger un mot Z  
et avoir en retour tous les champs de la table ou Z a ete trouve.
 
comme si je faisais un  
SELECT * FROM TABLE_OU_IL_Y_A_Z;
sauf que je ne sais pas dans quelle table est Z..[/g]
 
j'espere etre clair... j'aimerai eviter (pour l'instant du moins), de devoir faire des trucs en Perl,Python ou C++ pour interroger les bases...
 
 :jap: Merci pour toute aide :jap:


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed