July 13, 2007, 11:39 AM
Mark1Field distinction
Kind of an easy question, but I've been looking through my materials and can't find an answer.
If I join two tables together that have the same fields, how can I tell Focus which field I want from which table in my PRINT statement?
Is it something like:
JOIN FIELD IN TABLEA TO FIELD IN TABLEB
TABLE FILE TABLEA
PRINT TABLEA.FIELD
TABLEB.NAME
END
?
July 13, 2007, 01:21 PM
SuzanneNot sure if this is what you are asking, but you should be able to put the tablename.fieldname to get the field you need.
July 13, 2007, 01:27 PM
FrankDutchIf it is a inner join it would not matter.
But the way you are trying to do this is almost correct, just change the names to 'tablea.field' with the quotes.
July 14, 2007, 06:23 PM
linusUse tags:
JOIN SSN IN FILE1 TAG A TO SSN IN FILE2 TAG B AS J3
TABLE FILE FILE1
PRINT B.SSN
BY A.SSN
END
July 15, 2007, 01:51 AM
Alan BWithin Focus code there is a number of different ways to refer to fields:
JOIN FIELD IN TABLEA TO FIELD IN TABLEB
TABLE FILE TABLEA
PRINT TABLEA.FIELD
TABLEB.NAME
END
Would be correct, if NAME is in TABLEB.
As an example
TABLE FILE CAR
PRINT COUNTRY
ON TABLE HOLD FORMAT FOCUS
END
JOIN
COUNTRY IN HOLD TAG FILE1
TO COUNTRY IN CAR TAG FILE2 AS JOIN1
END
TABLE FILE CAR
PRINT
-* for host file, these are the same
COUNTRY
HOLD.COUNTRY
HOLD.SEG01.COUNTRY
FILE1.COUNTRY
-* for XREF, these are the same
CAR.COUNTRY
CAR.ORIGIN.COUNTRY
FILE2.COUNTRY
END
July 17, 2007, 04:55 PM
Mark1Thank you all. This is very helpful.