#1 Thu 11 September 2008 09:35
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
RequĂȘte SQL
Bonjour Ă tous,
Je lance une requĂȘte depuis 3 jours, mais du fait de l'heure de clĂŽture de la base, impossible d'obtenir le rĂ©sultat. Plus exactement, je peux obtenir le rĂ©sultat si je ne lui demande pas de spooler dans un fichier.
Voici la requĂȘte :
set colsep ";";
set pages 0;
Set Tab OFF;
set newpage NONE;
set recsep off;
set feedback off;
set LINESIZE 250;
spool C:serelle.log;
Select op.GID ||';'|| op."Denomm" ||';'||'51'||substr(parc.IDENT,1,3) ||';'||
ltrim(substr(parc.IDENT,7,2),'0') ||';'|| ltrim(substr(parc.IDENT,9,4),'0') ||';'|| parc."propriet" ||';'||
parc."nat_pro" ||';'||parc."parc_par"||';'||parc."date_acq"||';'||SDO_GEOM.SDO_AREA (parc.GEOMETRY,0.005) / 1000000||';'
FROM
A_REIMS.U_OPFONC op ,
A_REIMS.PCI_PARC parc
WHERE
(SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=contains querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=covers querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=overlapbdyintersect querytype=WINDOW')='TRUE'
OR SDO_RELATE(op.GEOMETRY,parc.GEOMETRY,'mask=equal querytype=WINDOW')='TRUE')
and round((SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005)/(SDO_GEOM.SDO_AREA(parc.GEOMETRY,0.005)))*100,3) 0
and (round((SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005)/(SDO_GEOM.SDO_AREA(parc.GEOMETRY,0.005)))*100,3) =100 OR
(SDO_GEOM.SDO_AREA(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY, 0.005),0.005))/1000000 > ((SDO_GEOM.SDO_LENGTH(SDO_GEOM.SDO_INTERSECTION(parc.GEOMETRY,op.GEOMETRY,0.005),0.1)*0.4)/2000)) AND op.GID IN (SELECT A_REIMS.U_OPFONC.GID FROM A_REIMS.U_OPFONC WHERE A_REIMS.U_OPFONC.GID'139')
spool off;
et voici ma question :
est-il possible de faire un traitement FME qui me permettrait d'obtenir une feuille xls en sortie avec ces enregistrements sélectionnés ?
D'avance merci, merci,
art X I. DĂ©claration des Droits de lâHomme et du Citoyen 1789
La libre communication des pensĂ©es et des opinions est un des droits les plus prĂ©cieux de lâHomme : tout Citoyen peut donc parler, Ă©crire, imprimer librement, sauf Ă rĂ©pondre de lâabus de cette libertĂ©, dans les cas dĂ©terminĂ©s par la Loi.
Hors ligne
#2 Thu 11 September 2008 18:02
Re: RequĂȘte SQL
Si vous enlevez toutes les commandes non sql (set, spool...) il ne devrait pas y avoir de problĂšme en utilisant SQLExecutor mais il vous faut donner un nom aux attributs concatĂ©nĂ©s et spĂ©cifier les mĂȘmes noms Ă la fin de l'assistant de SQLExecutor.
Hors ligne

