On Tue, Jan 21, 2025 at 11:21 PM jian he <jian.universal...@gmail.com> wrote:
> hi. > > attached patch add function argument name to function substring and substr > you can see the visual changes. > mater behavior: > > \df substring > List of functions > Schema | Name | Result data type | Argument data types | Type > > ------------+-----------+------------------+-------------------------+------ > pg_catalog | substring | bit | bit, integer | func > pg_catalog | substring | bit | bit, integer, integer | func > pg_catalog | substring | bytea | bytea, integer | func > pg_catalog | substring | bytea | bytea, integer, integer | func > pg_catalog | substring | text | text, integer | func > pg_catalog | substring | text | text, integer, integer | func > pg_catalog | substring | text | text, text | func > pg_catalog | substring | text | text, text, text | func > > with patch > List of functions > Schema | Name | Result data type | Argument > data types | Type > > ------------+-----------+------------------+--------------------------------------------------+------ > pg_catalog | substring | bit | bits bit, start integer > | func > pg_catalog | substring | bit | bits bit, start integer, > count integer | func > pg_catalog | substring | bytea | bytes bytea, start integer > | func > pg_catalog | substring | bytea | bytes bytea, start integer, > count integer | func > pg_catalog | substring | text | string text, pattern text > | func > pg_catalog | substring | text | string text, pattern > text, escape_character text | func > pg_catalog | substring | text | string text, start > integer | func > pg_catalog | substring | text | string text, start > integer, count integer | func > > I did the same change to the function substr. > since 9.7.2. SIMILAR TO Regular Expressions we use > substring(string, pattern, escape-character) > so i refactor the substring function argument name to > substring(string text, pattern text, escape_character text). > > we can make it as ``substring(string text, pattern text, escape text).`` > then in 9.7.2, we need to change the substring synopsis section. > > > > one thing I am not sure is about > 9.4. String Functions and Operators > Table 9.9. SQL String Functions and Operators. > Do we need entries for substring related functions? > > current signature > substring ( string text [ FROM start integer ] [ FOR count integer ] ) > is kind of different from > substring(string text, start integer, count integer). > since the previous one can allow keywords "FROM", "FOR", the latter one > won't. > > Table 9.9 limits itself to those functions defined in the SQL standard; which are basically the ones that use keywords instead of commas. The substring(string, start, count) function you note is already covered in Table 9.10 but we spell it substr(...) I don't think adding yet more spellings of this same function is warranted or desirable at this point. I'd maybe add a note if substring(,,,) works to substr saying that substring is a valid alias. I could be convinced to just document though. David J.