ORACLE BDD Probleme de

Résolu
Bonjour tout le monde,

J'ai besoin de créer une requête ou procédure qui me renvoie "false" quand la sous requête (select) ne renvoie aucune ligne, et "true" si elle en renvoie.

Je vous fourni la requête que j'ai réussi à faire la plus proche de la vérité à mon goût.
BEGIN
	IF 	(
	SELECT ROUND(T1,2) as "T1" 
	FROM TABLE	(
			TSEN.get_val(
				'tsen1',
				TO_DATE('10-04-2008' ||' '|| '21'|| ':' || '03', 'DD-MM-YYYY HH24:MI'),
				TO_DATE('22-04-2008' ||' '|| '04'|| ':' || '07', 'DD-MM-YYYY HH24:MI')
					  )   
				)
		) IS NULL THEN

		RETURN FALSE;
	ELSE
		RETURN TRUE;
	END IF; 
END;

la simple requête select fonctionne et me retourne des lignes; mais lorsque j'ajoute le if ... is null pour pouvoir avoir une fonction booléenne, ca ne fonctionne plus.

Quelqu'un aurait il une idée sur la manière de procéder ?

Merci d'avance

Aurélien
Configuration: Windows XP
Firefox 2.0.0.14

2 réponses

  1. c'est simple
    tu travailles avec select count
    declare
    v_count number;
    BEGIN

    SELECT count((T1) into v_count
    FROM TABLE (
    TSEN.get_val(
    'tsen1',
    TO_DATE('10-04-2008' ||' '|| '21'|| ':' || '03', 'DD-MM-YYYY HH24:MI'),
    TO_DATE('22-04-2008' ||' '|| '04'|| ':' || '07', 'DD-MM-YYYY HH24:MI')
    )
    );
    if (v_count = 0) then

    RETURN FALSE;
    ELSE
    RETURN TRUE;
    END IF;
    END;
    0
    1. merci à toi, ca fonctionne tres bien !
      0