多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 數據庫 > 數據庫應用 > PostgreSQL存儲過程返回數據集實例

PostgreSQL存儲過程返回數據集實例

來源:程序員人生   發布時間:2015-01-20 09:06:47 閱讀次數:3836次

這里用1個實例來演示PostgreSQL存儲進程如何返回數據集.

1 首先準備數據表

<pre name="code" class="sql">//member_category create table member_category(id serial, name text, discount_rate real, base_integral integer); alter table member_category add primary key(id); alter table member_category add check(name<>''); //member create table member(id serial, member_num text, name text, category_id integer, account numeric(16,2), integral integer, phone text, birthday date, qq integer, email text, status integer, address text, tip text, start_date date, valid_date integer, password text, creator integer, store_name text); alter table member add primary key(id); alter table member add foreign key(creator) references employee; alter table member add foreign key(category_id) references member_category; alter table member add onaccount int;
alter table member add  onaccount int; alter table member add  store_name text;



2 插入測試數據

insert into member_category(name, discount_rate, base_integral) values('白金會員', 6.5, 10000); insert into member_category(name, discount_rate, base_integral) values('高級會員', 7.5, 1000); insert into member_category(name, discount_rate, base_integral) values('中級會員', 8.5, 100); insert into member_category(name, discount_rate, base_integral) values('普通會員', 9.5, 10); insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000001', 'wuyilun', 1, 100000.00, 100000, 18814117777, '1990⑴2⑴2', 12345678, '123456@qq.com', 0, 1, 'B3⑷40', '超白金會員,1切免單', '2014-01⑴5', 1000000, 12345, '華南理工門店'); insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000002', '李小路', 2, 1000.00, 100000, 188141177234, '1990⑴2⑴2', 12345678, '123456@qq.com', 0, 1, 'B3⑷44', '...', '2014-01⑴5', 1000000, 12345, '華南理工門店'); insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000003', '洪金包', 3, 1000.00, 100000, 18814117234, '1990⑴2⑴2', 12345678, '123456@qq.com', 0, 1, 'B3⑷43', '...', '2014-01⑴5', 1000000, 12345, '華南理工門店'); insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000004', '成龍', 4, 100.00, 100000, 18814117723, '1990⑴2⑴2', 12345678, '123456@qq.com', 0, 1, 'B3⑷42', '...', '2014-01⑴5', 1000000, 12345, '華南理工門店'); insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000005', '范兵兵', 4, 100.00, 100000, 18814117327, '1990⑴2⑴2', 12345678, '123456@qq.com', 0, 1, 'B3⑷41', '...', '2014-01⑴5', 1000000, 12345, '華南理工門店');


3 創建存儲進程

--調用存儲進程f_get_member_info, 返回會員的所有信息 --memberType:會員類型 status:會員狀態 findCondition:查詢條件(卡號/電話/姓名) store_name:商店名稱 create or replace function f_get_member_info(memberType int, status int, findCondition text, store_name text) returns setof record as $$ declare rec record; begin for rec in EXECUTE 'select m.member_num, m.name, m_t.name, m_t.discount_rate, m.account, m.integral, m.phone, m.birthday, m.qq, m.email, m.onAccount, m.status, m.address, m.tip, m.start_date, m.valid_date, m.store_name from member m, member_category m_t where m.category_id = m_t.id and m_t.id = '|| memberType ||' and m.status = '|| status ||' and m.store_name = '''|| store_name ||''' and (m.member_num like ''%'|| findCondition ||'%'' or m.name like ''%'|| findCondition ||'%'' or m.phone like ''%'|| findCondition ||'%'');' loop return next rec; end loop; return; end $$ language 'plpgsql';


4 調用存儲進程

--調用存儲進程f_get_member_info示例 select * from f_get_member_info(4, 1, '', '華南理工門店') as member(member_num text,mname text,name text,discount_rate real,account numeric(16,2),integral int,phone text,birthday date,qq int,email text,onAccount int,status int,address text,tip text,start_date date,valid_date int,store_nam text);

5 測試結果





生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 最新日韩精品 | 在线亚洲欧洲国产综合444 | 最新国产在线观看福利91 | 国产欧美日韩在线一区二区不卡 | 69国产精品视频免费 | 欧美一线天 | 884aa四虎在线 | 最新更新国内自拍视频 | 欧美自拍另类 | 日本网络视频www色高清免费 | 国产精品久久1024 | 欧美一区精品二区三区 | jizz18性欧美大全 | 国产成人久久精品二区三区 | 欧美日韩亚洲视频 | 欧美孕妇乱大交xxxxx | 欧美性专区 | 欧美日韩亚洲国产 | 国产精品欧美一区二区三区 | 午夜肉伦伦影院 | japan高清日本乱xxxx | 亚洲女人天堂网 | 色一情一乱一乱91av | 日本a一级片 | 亚洲美女激情视频 | 性欧美17一18sex性高清播放 | 国产中文久久精品 | 毛色毛片免费观看 | 久久久久久极精品久久久 | 国产欧美在线观看视频 | 国产精品一区久久精品 | 亚洲 欧美 另类 综合 日韩 | 在线播放人成午夜免费视频 | 99精品福利 | 国产高清视频免费在线观看 | 欧美日韩精选 | 91成人午夜性a一级毛片 | 999av视频| 久久精品国产欧美成人 | 91精品人成在线观看 | 在线播放a 1 |