Customer ================== Customer_ID | Name Order ============================== Order_ID | Customer_ID | Price To insert an order, here is what I need to do usually, For example, "John" place "1.34" priced order. (1) Get Customer_ID from Customer table, where name is "John" (2) If there are no Customer_ID returned (There is no John), insert "John" (3) Get Customer_ID from Customer table, where name is "John" (4) Insert "Customer_ID" and "1.34" into Order table. There are 4 SQL communication with database involved for this simple operation!!! Is there any better way, which can be achievable using 1 SQL statement? Thanks and Regards Yan Cheng CHEOK -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general