unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (v7man)
Page:
Section:
Apropos / Subsearch:
optional field

JOIN(1)                     General Commands Manual                    JOIN(1)



NAME
       join - relational database operator

SYNOPSIS
       join [ options ] file1 file2

DESCRIPTION
       Join  forms, on the standard output, a join of the two relations speci-
       fied by the lines of file1 and file2.  If file1 is  `-',  the  standard
       input is used.

       File1  and  file2 must be sorted in increasing ASCII collating sequence
       on the fields on which they are to be joined,  normally  the  first  in
       each line.

       There  is  one  line  in the output for each pair of lines in file1 and
       file2 that have identical join fields.  The output line  normally  con-
       sists  of  the common field, then the rest of the line from file1, then
       the rest of the line from file2.

       Fields are normally separated by blank, tab or newline.  In this  case,
       multiple separators count as one, and leading separators are discarded.

       These options are recognized:

       -an    In  addition  to  the  normal  output,  produce  a line for each
              unpairable line in file n, where n is 1 or 2.

       -e s   Replace empty output fields by string s.

       -jn m  Join on the mth field of file n.  If n is missing, use  the  mth
              field in each file.

       -o list
              Each  output  line  comprises  the fields specifed in list, each
              element of which has the form n.m, where n is a file number  and
              m is a field number.

       -tc    Use  character  c as a separator (tab character).  Every appear-
              ance of c in a line is significant.

SEE ALSO
       sort(1), comm(1), awk(1)

BUGS
       With default field  separation,  the  collating  sequence  is  that  of
       sort -b; with -t, the sequence is that of a plain sort.

       The  conventions  of join, sort, comm, uniq, look and awk(1) are wildly
       incongruous.



                                                                       JOIN(1)