87 lines
1.7 KiB
Text
87 lines
1.7 KiB
Text
# about
|
|
|
|
<div class="html">HTML</div>
|
|
|
|
Multiple **bold** on the **same line**.
|
|
|
|
Multiple _italic_ on the *same_line*.
|
|
|
|
## user defined function in cql
|
|
|
|
```javascript
|
|
column.substring(0,num)
|
|
```
|
|
|
|
```cql
|
|
CREATE FUNCTION IF NOT EXISTS cycling.left (column TEXT,num int)
|
|
RETURNS NULL ON NULL INPUT
|
|
RETURNS text
|
|
LANGUAGE javascript AS $$
|
|
column.substring(0,num)
|
|
$$;
|
|
|
|
CREATE OR REPLACE FUNCTION cycling.fLog (input double)
|
|
CALLED ON NULL INPUT
|
|
RETURNS double LANGUAGE java AS
|
|
'return Double.valueOf(Math.log(input.doubleValue()));';
|
|
```
|
|
|
|
```postgres
|
|
DROP TABLE IF EXISTS emp CASCADE;
|
|
|
|
CREATE TABLE emp (
|
|
empname text,
|
|
salary integer,
|
|
last_date timestamp,
|
|
last_user text
|
|
);
|
|
|
|
select
|
|
$my_tag$aoeuaoeu$my_tag$ as blah
|
|
;
|
|
|
|
CREATE OR REPLACE FUNCTION emp_stamp() RETURNS trigger AS $emp_stamp$
|
|
BEGIN
|
|
-- Check that empname and salary are given
|
|
IF NEW.empname IS NULL THEN
|
|
RAISE EXCEPTION 'empname cannot be null';
|
|
END IF;
|
|
IF NEW.salary IS NULL THEN
|
|
RAISE EXCEPTION '% cannot have null salary', NEW.empname;
|
|
END IF;
|
|
|
|
-- Who works for us when she must pay for it?
|
|
IF NEW.salary < 0 THEN
|
|
RAISE EXCEPTION '% cannot have a negative salary', NEW.empname;
|
|
END IF;
|
|
|
|
-- Remember who changed the payroll when
|
|
NEW.last_date := current_timestamp;
|
|
NEW.last_user := current_user;
|
|
RETURN NEW;
|
|
END;
|
|
$emp_stamp$ LANGUAGE plpgsql;
|
|
|
|
CREATE TRIGGER emp_stamp BEFORE INSERT OR UPDATE ON emp
|
|
FOR EACH ROW EXECUTE PROCEDURE emp_stamp();
|
|
|
|
DO language plpgsql $$
|
|
declare r record;
|
|
begin
|
|
for r in select * from books
|
|
loop
|
|
execute 'select ''' || r.title || '''';
|
|
end loop;
|
|
end
|
|
$$;
|
|
|
|
DO $$
|
|
declare r record;
|
|
begin
|
|
for r in select * from books
|
|
loop
|
|
execute 'select ''' || r.title || '''';
|
|
end loop;
|
|
end
|
|
$$;
|
|
```
|