Re: Document that char () ignores spaces only in non-patterncomparisons

Started by Kevin Grittnerabout 15 years ago5 messagesdocs
Jump to latest
#1Kevin Grittner
Kevin.Grittner@wicourts.gov

Bruce Momjian <bruce@momjian.us> wrote:

A private email I received indicated that our documentation about
ignoring trailing spaces in CHAR() comparisons was slightly
inaccurate. I have update our docs to indicate it is only
non-pattern comparisons that ignore spaces with CHAR(). Applied
doc patch attached.

This language:

| disregarded when non-pattern comparing two values

seems quite awkward.

Isn't it a stretch to consider pattern-matching predicates to be
compares, anyway? It seems like it would be better to distinguish
between comparisons, where the trailing spaces are ignored, and
other predicates such as pattern matching, where trailing spaces are
not ignored.

-Kevin

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Kevin Grittner (#1)

"Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:

Bruce Momjian <bruce@momjian.us> wrote:

A private email I received indicated that our documentation about
ignoring trailing spaces in CHAR() comparisons was slightly
inaccurate. I have update our docs to indicate it is only
non-pattern comparisons that ignore spaces with CHAR(). Applied
doc patch attached.

This language:

| disregarded when non-pattern comparing two values

seems quite awkward.

I didn't like it either. I suggest reverting that part of the patch.
The added text later on is sufficient.

regards, tom lane

#3Bruce Momjian
bruce@momjian.us
In reply to: Kevin Grittner (#1)

Kevin Grittner wrote:

Bruce Momjian <bruce@momjian.us> wrote:

A private email I received indicated that our documentation about
ignoring trailing spaces in CHAR() comparisons was slightly
inaccurate. I have update our docs to indicate it is only
non-pattern comparisons that ignore spaces with CHAR(). Applied
doc patch attached.

This language:

| disregarded when non-pattern comparing two values

seems quite awkward.

Yes, it is. :-(

Oh, I wanted to show an example of the difference:

test=> SELECT 'abc'::char(4) = 'abc'::char(6);
?column?
----------
t
(1 row)

test=> SELECT 'abc'::char(4) LIKE 'abc'::char(6);
?column?
----------
f
(1 row)

Isn't it a stretch to consider pattern-matching predicates to be
compares, anyway? It seems like it would be better to distinguish
between comparisons, where the trailing spaces are ignored, and
other predicates such as pattern matching, where trailing spaces are
not ignored.

Uh, how about I remove "pattern" from the first sentence, but keep the
second pattern mention and remove the word "comparison" there?

treated as semantically insignificant. Trailing spaces are
--> disregarded when comparing two values of type <type>character</type>,
and they will be removed when converting a <type>character</type> value
to one of the other string types. Note that trailing spaces
<emphasis>are</> semantically significant in
<type>character varying</type> and <type>text</type> values, and
--> when using pattern matching, e.g. <literal>LIKE</>,
regular expressions.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +

#4Bruce Momjian
bruce@momjian.us
In reply to: Tom Lane (#2)

Tom Lane wrote:

"Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:

Bruce Momjian <bruce@momjian.us> wrote:

A private email I received indicated that our documentation about
ignoring trailing spaces in CHAR() comparisons was slightly
inaccurate. I have update our docs to indicate it is only
non-pattern comparisons that ignore spaces with CHAR(). Applied
doc patch attached.

This language:

| disregarded when non-pattern comparing two values

seems quite awkward.

I didn't like it either. I suggest reverting that part of the patch.
The added text later on is sufficient.

OK, since you liked that idea too, I have applied an updated patch,
attached.

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ It's impossible for everything to be true. +

Attachments:

/rtmp/bpchar2.difftext/x-diffDownload+4-4
#5Kevin Grittner
Kevin.Grittner@wicourts.gov
In reply to: Bruce Momjian (#4)

Bruce Momjian <bruce@momjian.us> wrote:

I have applied an updated patch

FWIW, that looks good to me.

-Kevin