]>
Git — Sourcephile - tmp/julm/LesQuatreRoux.git/blob - sql/note.sql
1 NEXT_DAY(CURRENT_DATE, 'WEDNESDAY')
2 DROP TYPE SYS_REFCURSOR
CASCADE;
3 CREATE TYPE SYS_REFCURSOR
AS INT;
5 SET DATABASE REFERENTIAL
INTEGRITY FALSE;
6 SET DATABASE REFERENTIAL
INTEGRITY TRUE;
7 SELECT * FROM UNNEST(SEQUENCE_ARRAY(CURRENT_DATE, CURRENT_DATE + 6 DAY, 1 DAY)) WITH ORDINALITY AS T(D
, I
);
9 CREATE FUNCTION an_hour_before (t
TIMESTAMP)
13 CREATE PROCEDURE delete_extra_customers(INOUT val_p
INT, IN lastname_p
VARCHAR(20))
17 for_label
: FOR SELECT * FROM customers
WHERE lastname
= lastname_p
DO
19 DELETE FROM customers
WHERE customers.
id = id;
21 SET val_p
= val_p
+ 1;
25 -- DECLARE my_ver INTEGER DEFAULT 2;
26 -- loop_label: WHILE my_var < 20 DO
27 -- INSERT INTO CUSTOMERS VALUES (DEFAULT, my_var);
28 -- SET my_var = my_var + 1;
29 -- -- LEAVE can be used to break the loop
30 -- IF my_var = 15 THEN LEAVE loop_label; END IF;
31 -- END WHILE loop_label;
35 FROM UNNEST(SEQUENCE_ARRAY(DATE '2025-04-07', CURRENT_DATE + 7 DAY, 1 DAY))
36 WITH ORDINALITY AS T(D
, I
);
37 DECLARE LOCAL NAMES TABLE test_retval (x
INT);
43 CREATE TABLE customers(id INTEGER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY, firstname
VARCHAR(50), lastname
VARCHAR(50), added
TIMESTAMP);
45 CREATE TABLE addresses(id INTEGER GENERATED BY DEFAULT AS IDENTITY, customerid
INTEGER, address
VARCHAR(50));
47 ALTER TABLE addresses
ADD CONSTRAINT fk_addr
FOREIGN KEY(customerid
) REFERENCES customers(id);
50 DROP PROCEDURE new_customer
IF EXISTS;
51 CREATE PROCEDURE new_customer(firstname
VARCHAR(50), lastname
VARCHAR(50))
52 MODIFIES SQL DATA DYNAMIC RESULT SETS 1
54 DECLARE result CURSOR FOR SELECT * FROM CUSTOMERS
WHERE ID = IDENTITY();
55 INSERT INTO CUSTOMERS
VALUES (DEFAULT, firstname
, lastname
, CURRENT_TIMESTAMP);
61 --CREATE DOMAIN valid_string AS VARCHAR(20) DEFAULT 'NO VALUE' CHECK (VALUE IS NOT NULL AND CHARACTER_LENGTH(VALUE) > 2)
62 --select "Prix".*, P.*
63 -- FROM TABLE (produit_maxdate(CURRENT_DATE)) as P
64 -- JOIN "Prix" ON "Prix".ID = P.ID
65 -- AND "Prix".date = P.max_date
68 -- FROM ( SELECT "PID", MAX( "D" ) AS "MD"
69 -- FROM "PRICES" JOIN "PROD" ON "PROD"."ID" = "PRICES"."PID"
70 -- WHERE "EX" = FALSE AND "D" <= COALESCE ( :pDate, CURRENT_DATE )
71 -- GROUP BY "PID" ) AS "X"
72 -- JOIN "PRICES" ON "PRICES"."PID" = "X"."PID"
73 -- AND "PRICES"."D" = "X"."MD"
75 --SET retval = SEQUENCE_ARRAY(DATE '2025-04-07', DATE '2025-04-17', 1 DAY);
76 --select count(*) from information_schema.columns where table_name='LOB_IDS' and table_schema='SYSTEM_LOBS';