Advertisement
hackerboxes

show you created new function in the postgresql

Apr 1st, 2013
288
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE OR REPLACE FUNCTION test_1( date1 VARCHAR(100),pollutant1 VARCHAR(20),grid_id1 integer)
  2.    RETURNS BOOLEAN
  3.    AS
  4. $BODY$
  5. DECLARE  
  6. date1 varchar(100);
  7. pollutant1 varchar(20);
  8. grid_id1 integer;
  9. value1 bigint;
  10. BEGIN
  11. value1:='select sum("hourly_rio_result".value)::integer/count(*) as a from "hourly_rio_result" where rundate=date1 and pollutant=pollutant1 and grid_id=grid_id1';
  12. insert into daily_rio_result(rundate,pollutant,grid_id,value) values(to_date(date1,'yyyy-mm-dd'),pollutant1,grid_id1,value1);
  13. RETURN TRUE;  
  14. END
  15. $BODY$
  16. LANGUAGE 'plpgsql' VOLATILE;  -- 最后别忘了这个。
  17. select test_1('2012-03-26','pm10',2);
  18.  
  19. CREATE OR REPLACE FUNCTION avg_v2(varchar(100),varchar(50),integer) RETURNS bigint AS $$
  20.     SELECT sum(hourly_rio_result.value)::integer/count(*) from hourly_rio_result where rundate=to_date($1,'yyyy-mm-dd') and pollutant=$2 and grid_id=$3
  21. $$ LANGUAGE SQL;
  22. select avg_v2('2012-03-26','pm10',2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement