Using select into to set variable value : Set Value « Postgre SQL « PostgreSQL

PostgreSQL
1. Aggregate Functions
2. Analytical Functions
3. Array
4. Constraints
5. Cursor
6. Data Type
7. Database
8. Date Timezone
9. Index
10. Inheritance
11. Insert Delete Update
12. Math Functions
13. Postgre SQL
14. Select Query
15. Sequence
16. Store Procedure Function
17. String Functions
18. Subquery
19. Table
20. Table Joins
21. Transaction
22. User Previliege
23. View
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
PostgreSQL » Postgre SQL » Set Value 
Using select into to set variable value


postgres=#
postgres=# CREATE TABLE "editions" (
postgres(#      "isbn" text NOT NULL,
postgres(#      "book_id" integer,
postgres(#      "edition" integer,
postgres(#      "publisher_id" integer,
postgres(#      "publication" date,
postgres(#      "type" character(1),
postgres(#      CONSTRAINT "integrity" CHECK (((book_id NOTNULLAND (edition NOTNULL))),
postgres(#      Constraint "pkey" Primary Key ("isbn")
postgres();
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "pkey" for table "editions"
CREATE TABLE
postgres=#
postgres=# insert into editions value('039480001X', 1608,  1,  59,  '1957-03-01', 'h');
postgres=# insert into editions value('0451160916', 7808,  1,  75,  '1981-08-01', 'p');
postgres=# insert into editions value('0394800753', 1590,  1,  59,  '1949-03-01', 'p');
postgres=# insert into editions value('0590445065', 259081,  150'1987-03-01', 'p');
postgres=# insert into editions value('0694003611', 1501,  1,  65,  '1947-03-04', 'p');
postgres=# insert into editions value('0679803335', 1234,  1,  102'1922-01-01', 'p');
postgres=# insert into editions value('0760720002', 190,   1,  91,  '1868-01-01', 'p');
postgres=# insert into editions value('0394900014', 1608,  1,  59,  '1957-01-01', 'p');
postgres=# insert into editions value('0385121679', 7808,  2,  75,  '1993-10-01', 'h');
postgres=# insert into editions value('1885418035', 156,   1,  163'1995-03-28', 'p');
postgres=# insert into editions value('0929605942', 156,   2,  171'1998-12-01', 'p');
postgres=# insert into editions value('0441172717', 4513,  2,  99,  '1998-09-01', 'p');
postgres=# insert into editions value('044100590X', 4513,  3,  99,  '1999-10-01', 'h');
postgres=# insert into editions value('0451457994', 4267,  3,  101'2000-09-12', 'p');
postgres=# insert into editions value('0451198492', 4267,  3,  101'1999-10-01', 'h');
postgres=# insert into editions value('0823015505', 2038,  1,  62,  '1958-01-01', 'p');
postgres=# insert into editions value('0596000855', 414732,  113'2001-03-01', 'p');
postgres=#
postgres=# select from editions;
 isbn | book_id | edition | publisher_id | publication | type
------+---------+---------+--------------+-------------+------
(rows)

postgres=#
postgres=#
postgres=#
postgres=# CREATE TABLE "stock" (
postgres(#      "isbn" text NOT NULL,
postgres(#      "cost" numeric(5,2),
postgres(#      "retail" numeric(5,2),
postgres(#      "stock" integer,
postgres(#      Constraint "stock_pkey" Primary Key ("isbn")
postgres();
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "stock_pkey" for table "stock"
CREATE TABLE
postgres=#
postgres=#
postgres=# insert into stock values ('0385121679', 29.0036.9565);
INSERT 0 1
postgres=# insert into stock values ('039480001X', 30.0032.9531);
INSERT 0 1
postgres=# insert into stock values ('0394900014', 23.0023.950);
INSERT 0 1
postgres=# insert into stock values ('044100590X', 36.0045.9589);
INSERT 0 1
postgres=# insert into stock values ('0441172717', 17.0021.9577);
INSERT 0 1
postgres=# insert into stock values ('0451160916', 24.0028.9522);
INSERT 0 1
postgres=# insert into stock values ('0451198492', 36.0046.950);
INSERT 0 1
postgres=# insert into stock values ('0451457994', 17.0022.950);
INSERT 0 1
postgres=# insert into stock values ('0590445065', 23.0023.9510);
INSERT 0 1
postgres=# insert into stock values ('0679803335', 20.0024.9518);
INSERT 0 1
postgres=# insert into stock values ('0694003611', 25.0028.9550);
INSERT 0 1
postgres=# insert into stock values ('0760720002', 18.0023.9528);
INSERT 0 1
postgres=# insert into stock values ('0823015505', 26.0028.9516);
INSERT 0 1
postgres=# insert into stock values ('0929605942', 19.0021.9525);
INSERT 0 1
postgres=# insert into stock values ('1885418035', 23.0024.9577);
INSERT 0 1
postgres=# insert into stock values ('0394800753', 16.0016.954);
INSERT 0 1
postgres=#
postgres=# select FROM stock;
    isbn    | cost  | retail | stock
------------+-------+--------+-------
 0385121679 29.00 |  36.95 |    65
 039480001X | 30.00 |  32.95 |    31
 0394900014 23.00 |  23.95 |     0
 044100590X | 36.00 |  45.95 |    89
 0441172717 17.00 |  21.95 |    77
 0451160916 24.00 |  28.95 |    22
 0451198492 36.00 |  46.95 |     0
 0451457994 17.00 |  22.95 |     0
 0590445065 23.00 |  23.95 |    10
 0679803335 20.00 |  24.95 |    18
 0694003611 25.00 |  28.95 |    50
 0760720002 18.00 |  23.95 |    28
 0823015505 26.00 |  28.95 |    16
 0929605942 19.00 |  21.95 |    25
 1885418035 23.00 |  24.95 |    77
 0394800753 16.00 |  16.95 |     4
(16 rows)

postgres=#
postgres=# drop function stock_amount(integer, integer);
DROP FUNCTION
postgres=#
postgres=# -- Using the IF/THEN statement
postgres=#
postgres=# CREATE FUNCTION stock_amount (integer, integerRETURNS integer AS '
postgres'#   DECLARE
postgres'#      -- Declare aliases for function arguments.
postgres'#     b_id ALIAS FOR $1;
postgres'#     b_edition ALIAS FOR $2;
postgres'#      -- Declare variable to store the ISBN number.
postgres'#     b_isbn TEXT;
postgres'#      -- Declare variable to store the stock amount.
postgres'#     stock_amount INTEGER;
postgres'#   BEGIN
postgres'#     SELECT INTO b_isbn isbn FROM editions WHERE
postgres'#       book_id = b_id AND edition = b_edition;
postgres'#
postgres'#     IF b_isbn IS NULL THEN
postgres'#       RETURN -1;
postgres'#     END IF;
postgres'#
postgres'#     SELECT INTO stock_amount stock FROM stock WHERE isbn = b_isbn;
postgres'#
postgres'#     RETURN stock_amount;
postgres'#   END;
postgres'# ' LANGUAGE 'plpgsql';
CREATE FUNCTION
postgres=#
postgres=#
postgres=# SELECT stock_amount(7808,1);
 stock_amount
--------------
           -1
(row)

postgres=#
postgres=# drop table stock;
DROP TABLE
postgres=#
postgres=#
           
       
Related examples in the same category
1. Using the SELECT INTO statement
2. Using SELECT INTO with multiple columns
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.