(1 row)
select argument_test_one(users, fname, lname) from users where lname = 'doe' order by 1;
- argument_test_one
--------------------------------------------------------------------------------------
- jane doe => {'fname': 'jane', 'userid': 1, 'lname': 'doe', 'username': 'j_doe'}
- john doe => {'fname': 'john', 'userid': 2, 'lname': 'doe', 'username': 'johnd'}
- willem doe => {'fname': 'willem', 'userid': 3, 'lname': 'doe', 'username': 'w_doe'}
+ argument_test_one
+-----------------------------------------------------------------------
+ jane doe => {fname: jane, lname: doe, userid: 1, username: j_doe}
+ john doe => {fname: john, lname: doe, userid: 2, username: johnd}
+ willem doe => {fname: willem, lname: doe, userid: 3, username: w_doe}
(3 rows)
select nested_call_one('pass this along');
CREATE FUNCTION argument_test_one(users, text, text) RETURNS text
AS
-'words = args[1] + " " + args[2] + " => " + str(args[0])
+'keys = args[0].keys()
+keys.sort()
+out = []
+for key in keys:
+ out.append("%s: %s" % (key, args[0][key]))
+words = args[1] + " " + args[2] + " => {" + ", ".join(out) + "}"
return words'
LANGUAGE 'plpython';