Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Proszę o podanie kodu ceny tylko wtedy, gdy wpisz :=E

za każdym razem, gdy wywołujesz zmienną ze znakiem ampersand, powiązana instrukcja postrzega ją jako parametr. Możesz nazwać to procedurą lub funkcją, aby stłumić taką odpowiedź:

SQL> set serveroutput on;
SQL> CREATE OR REPLACE PROCEDURE MY_PROC( lv_price_num NUMBER, lv_type_txt VARCHAR2 ) IS
      lv_disc_num NUMBER(3,2);
    BEGIN 
      IF lv_type_txt = 'E' THEN
            IF    lv_price_num > 85 THEN
                  lv_disc_num := .20;
            ELSIF lv_price_num > 45 THEN
                  lv_disc_num := .15;
            ELSE  lv_disc_num := .10;
            END IF;
        ELSIF lv_type_txt = 'C' THEN
              lv_disc_num := .05;
        ELSE lv_disc_num := 0;
        END IF;
        DBMS_OUTPUT.PUT_LINE(lv_disc_num);
   END; 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:Stwórz klucz złożony zawierający trzy klucze obce

  2. Formatowanie DATE w Oracle

  3. Odświeżanie / aktualizowanie ekranu formularza w Oracle D2k Forms 6i

  4. Czy użycie SELECT COUNT(*) przed SELECT INTO jest wolniejsze niż używanie wyjątków?

  5. Sprawdź, czy tabele są identyczne, używając SQL w Oracle