CASTING in JOIN or WHERE - Mailing list pgsql-novice

From Keith Worthington
Subject CASTING in JOIN or WHERE
Date
Msg-id 20050216163641.M46189@narrowpathinc.com
Whole thread Raw
List pgsql-novice
Hi All,

I have written some SQL and have noticed that PostgreSQL seems to be modifying
the syntax slightly.  I do not care per se but if it impacts performance I
want to understand how to write the SQL in the more efficient form.  I am
recalling posts commenting on columns with dissimilar types and the lack of
index usage.

I have a column of type varchar
   id | character varying(20) | not null

I use this in a WHERE clause
   WHERE id = 'SN'
PostgreSQL changes the statement to
   WHERE id::text = 'SN'::text

I notice a similar behavior when doing JOINs
Given in table 1
   item_id | character varying(20) | not null
and in table 2
   id | character varying(20) | not null

The JOIN
ON ( tbl_line_item.item_id = tbl_item.id )
is changed to
ON ( tbl_line_item.item_id::text = tbl_item.id::text )

Kind Regards,
Keith

pgsql-novice by date:

Previous
From: brew@theMode.com
Date:
Subject: Re: Revision Control
Next
From: "Les Carter"
Date:
Subject: export/import from one schema to another?