I have only had that message when the field (LOCN in this case) is NOT
unique
Try the following SQL
select LOCN, count(*) from tomh/locnmstrpf group by LOCN having count(*) >
2
and
select LOCN, count(*) from adp/locnmstrpf group by LOCN having count(*) > 2
if you get a display in either one then LOCN is NOT unique
Alan Shore
Programmer/Analyst, Direct Response
E:AShore@xxxxxxxx
P:(631) 200-5019
C:(631) 880-8640
"If you're going through Hell, keep going" - Winston Churchill
"Tom"
<tomh@xxxxxxxxxxx
> To
Sent by: "'Midrange Systems Technical
midrange-l-bounce Discussion'"
s@xxxxxxxxxxxx <midrange-l@xxxxxxxxxxxx>
cc
12/09/2009 01:00 Subject
PM RE: Help with a fairly basic SQL (I
think)
Please respond to
Midrange Systems
Technical
Discussion
<midrange-l@midra
nge.com>
The field LOCN is unique in both files, but it's still giving the "Result
of
SELECT more than one row" message.
Tom
-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Alan Shore
Sent: Wednesday, December 09, 2009 11:24 AM
To: Midrange Systems Technical Discussion
Subject: Re: Help with a fairly basic SQL (I think)
Hi Tom
2 things
try the following
update adp/locnmstrpf set printer=(select a.printer from tomh/locnmstrpf a,
adp/locnmstrpf b where a.locn=b.locn and a.printer<>' ' and b.printer=' ')
where exists (select * from tomh/locnmstrpf a, adp/locnmstrpf b where
a.locn=b.locn and a.printer<>' ' and b.printer=' ')
however - is the locn field unique within each file. If not, you need to
include more fields so that there is a uniqueness to the select
Alan Shore
Programmer/Analyst, Direct Response
E:AShore@xxxxxxxx
P:(631) 200-5019
C:(631) 880-8640
"If you're going through Hell, keep going" - Winston Churchill
"Tom"
<tomh@xxxxxxxxxxx
> To
Sent by: "'Midrange Systems Technical
midrange-l-bounce Discussion'"
s@xxxxxxxxxxxx <midrange-l@xxxxxxxxxxxx>
cc
12/09/2009 12:20 Subject
PM Help with a fairly basic SQL (I
think)
Please respond to
Midrange Systems
Technical
Discussion
<midrange-l@midra
nge.com>
I have two files: TOMH/LOCNMSTRPF, ADP/LOCNMSTRPF - both the same layout
and field names (the TOMH file is a backup of the ADP file). Key field for
each is called LOCN. For all records in ADP/LOCNMSTRPF, I want to update
one field ("printer") with data from the corresponding record/field in
TOMH/LOCNMSTRPF. I've tried the following SQL, but I'm getting an error:
update adp/locnmstrpf set printer=(select a.printer from tomh/locnmstrpf a,
adp/locnmstrpf b where a.locn=b.locn and a.printer<>' ' and b.printer=' ')
The error is: Result of SELECT more than one row.
Well of course it is. I know I can use RPG to do what I want, but I'd like
to know how to accomplish the same thing using only SQL. There is a way to
do this, right?
TomH
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at
http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.