diff --git a/doc/src/sgml/charset.sgml b/doc/src/sgml/charset.sgml
index 15d17c4988c..7e2f07eb9b5 100644
--- a/doc/src/sgml/charset.sgml
+++ b/doc/src/sgml/charset.sgml
@@ -564,7 +564,7 @@ SELECT * FROM test1 ORDER BY a || b COLLATE "fr_FR";
name such as de_DE can be considered unique
within a given database even though it would not be unique globally.
Use of the stripped collation names is recommended, since it will
- make one less thing you need to change if you decide to change to
+ make one fewer thing you need to change if you decide to change to
another database encoding. Note however that the default>,
C>, and POSIX> collations can be used
regardless of the database encoding.
diff --git a/doc/src/sgml/pageinspect.sgml b/doc/src/sgml/pageinspect.sgml
index 56c43ca7ee4..d1079bc6190 100644
--- a/doc/src/sgml/pageinspect.sgml
+++ b/doc/src/sgml/pageinspect.sgml
@@ -130,7 +130,7 @@ test=# SELECT tuple_data_split('pg_class'::regclass, t_data, t_infomask, t_infom
If do_detoast is true,
- attribute that will be detoasted as needed. Default value is
+ attributes will be detoasted as needed. Default value is
false.
diff --git a/doc/src/sgml/ref/create_type.sgml b/doc/src/sgml/ref/create_type.sgml
index 3f544138877..30b10e0a399 100644
--- a/doc/src/sgml/ref/create_type.sgml
+++ b/doc/src/sgml/ref/create_type.sgml
@@ -790,7 +790,7 @@ CREATE TYPE name
Before PostgreSQL version 8.3, the name of
a generated array type was always exactly the element type's name with one
underscore character (_) prepended. (Type names were
- therefore restricted in length to one less character than other names.)
+ therefore restricted in length to one fewer character than other names.)
While this is still usually the case, the array type name may vary from
this in case of maximum-length names or collisions with user type names
that begin with underscore. Writing code that depends on this convention
diff --git a/doc/src/sgml/ref/drop_index.sgml b/doc/src/sgml/ref/drop_index.sgml
index 4c0c48ab1ea..a53c8cc665f 100644
--- a/doc/src/sgml/ref/drop_index.sgml
+++ b/doc/src/sgml/ref/drop_index.sgml
@@ -45,7 +45,7 @@ DROP INDEX [ CONCURRENTLY ] [ IF EXISTS ] name
Drop the index without locking out concurrent selects, inserts, updates,
and deletes on the index's table. A normal DROP INDEX>
- acquires exclusive lock on the table, blocking other accesses until the
+ acquires an exclusive lock on the table, blocking other accesses until the
index drop can be completed. With this option, the command instead
waits until conflicting transactions have completed.
diff --git a/doc/src/sgml/rules.sgml b/doc/src/sgml/rules.sgml
index 9b1c12dfca4..1a2b11bd212 100644
--- a/doc/src/sgml/rules.sgml
+++ b/doc/src/sgml/rules.sgml
@@ -1265,7 +1265,7 @@ CREATE [ OR REPLACE ] RULE name AS
The query trees generated from rule actions are thrown into the
rewrite system again, and maybe more rules get applied resulting
- in more or less query trees.
+ in additional or fewer query trees.
So a rule's actions must have either a different
command type or a different result relation than the rule itself is
on, otherwise this recursive process will end up in an infinite loop.