Re: bytea question
От | Stephan Szabo |
---|---|
Тема | Re: bytea question |
Дата | |
Msg-id | Pine.BSF.4.10.10008151439460.87810-100000@megazone23.bigpanda.com обсуждение исходный текст |
Ответ на | Re: bytea question (mikeo <mikeo@spectrumtelecorp.com>) |
Список | pgsql-general |
Well, I don't think you're going to be able to without resorting to something other than straight sql (a c function would probably work). You can get the value of a particular byte using get_byte(bytea,int) but I can't think of a good way outside of some sort of function to turn that into a split. Also, get_byte elogs if the int is outside the range of octets on the bytea. I would have expected it to work closer to substr on text. Stephan Szabo sszabo@bigpanda.com On Tue, 15 Aug 2000, mikeo wrote: > thanks anyway but that doesn't work. i should've mentioned that i'd > already tried that in SQL. my apologies. > > > tig4=# \d x > Table "x" > Attribute | Type | Modifier > -----------+-------+---------- > tgargs | bytea | > > tig4=# select substr(tgargs,1,5) from x; > ERROR: Function 'substr(bytea, int4, int4)' does not exist > Unable to identify a function that satisfies the given argument types > You may need to add explicit typecasts > > tig4=# select substr(tgargs::text,1,5) from x; > ERROR: Cannot cast type 'bytea' to 'text' > > and other things like varchar, etc. > > tig4=# select * from x; > tgargs > ------------------------------------------------------------------------------ > fk_uste_wu_id\000us_states\000web_users\000UNSPECIFIED\000wu_id\000wu_id\000 > fk_uste_wu_id\000us_states\000web_users\000UNSPECIFIED\000wu_id\000wu_id\000 > fk_uste_wu_id\000us_states\000web_users\000UNSPECIFIED\000wu_id\000wu_id\000 > > what i'm looking to do here is to get the table names and column names out > using sql. i can do it in perl with a split command on '\' but was curious > as to how to "SQL" split up a BYTEA type field. > > mikeo > > > At 04:38 PM 8/15/00 -0400, mjp@ornl.gov wrote: > >Try > > > >substr(text,int4) or > >substr(text, int4, int4) > > > >For example, > > > > > >% select substr('hi there',4,3); > > substr > >-------- > > the > >(1 row) > > > >Morey Parang > >ORNL >
В списке pgsql-general по дате отправления: