Return-Path: owner-postman
Received: from localhost.Berkeley.EDU (localhost.Berkeley.EDU [127.0.0.1]) by nobozo.CS.Berkeley.EDU (8.6.9/8.6.3) with SMTP id MAA13951 for postgres-redist; Sun, 2 Oct 1994 12:34:46 -0700
Resent-From: POSTGRES mailing list <postman@postgres.Berkeley.EDU>
Resent-Message-Id: <199410021934.MAA13951@nobozo.CS.Berkeley.EDU>
Sender: owner-postman@postgres.Berkeley.EDU
X-Return-Path: owner-postman
Received: from localhost.Berkeley.EDU (localhost.Berkeley.EDU [127.0.0.1]) by nobozo.CS.Berkeley.EDU (8.6.9/8.6.3) with SMTP id MAA13941; Sun, 2 Oct 1994 12:34:45 -0700
Message-Id: <199410021934.MAA13941@nobozo.CS.Berkeley.EDU>
X-Authentication-Warning: nobozo.CS.Berkeley.EDU: Host localhost.Berkeley.EDU didn't use HELO protocol
From: aoki@cs.berkeley.edu (Paul M. Aoki)
To: "WEIX%PTHWRK.allin1"@puget.com
Cc: postgres@postgres.Berkeley.EDU
Subject: Re: Questions on Virtual Attributes 
Reply-To: aoki@cs.berkeley.edu (Paul M. Aoki)
In-reply-to: Your message of Sat, 1 Oct 1994 23:38 PDT 
	     <9410020639.AA23035@mdd.comm.mot.com> 
Date: Sun, 02 Oct 94 12:34:45 -0700
X-Sender: aoki@postgres.Berkeley.EDU
Resent-To: postgres-redist@postgres.Berkeley.EDU
X-Mts: smtp
Resent-Date: Sun, 02 Oct 94 12:34:46 -0700
Resent-XMts: smtp

"WEIX%PTHWRK.allin1"@puget.com writes:
> create EMP (name = text, dept = text)\g
> create DEPT (name = text, emp_no = setof int4) \g

create FOO (a = int4) \g
create DEPT (name = text, emp_no = setof FOO) \g

> append EMP (name = "a", dept = "candy")\g
> append EMP (name = "b", dept = "candy")\g
> append DEPT (name = "candy",
>   emp_no = "retrieve (a = count{EMP.name where EMP.dept = \\"candy\\"})") \g
> retrieve (DEPT.name, DEPT.emp_no) \g
> Query sent to backend is "retrieve (dept.name, dept.emp_no) "
> -----------------------------
> | name        | emp_no      |
> -----------------------------
> | candy       | 25252       |
> -----------------------------
>  The value of emp_no here looks like an OID. What kind of object is that? How
>  can i get the correct value of 2 ?

by dereferencing it.  the only thing you can do with a set is project
an attribute from it.

* retrieve (DEPT.name, DEPT.emp_no.a)\g

Query sent to backend is "retrieve (DEPT.name, DEPT.emp_no.a)"
-----------------------------
| name        | a           |
-----------------------------
| candy       | 2           |
-----------------------------

Go 
*
--
  Paul M. Aoki          |  University of California at Berkeley
  aoki@CS.Berkeley.EDU  |  Dept. of EECS, Computer Science Division (#1776) 
                        |  Berkeley, CA 94720-1776

==============================================================================
   To add/remove yourself to/from the POSTGRES mailing list: send mail with 
   the subject line ADD or DEL to "postgres-request@postgres.Berkeley.EDU"

   If this fails, send mail to "post_questions@postgres.Berkeley.EDU" and
   a human will deal with it.  DO NOT post to the "postgres" mailing list.
==============================================================================
