Using concatenation operator
I have a (stupid) question regarding using concatenation operator.
I would like to get the list of tables from the database and output the select count(*) for each of them
I don't want the schema name proceeding the select, how can I omit without receiving the error below.
psql eventdb001 -t -c "select schemaname||'select count (*) from '||schemaname||'.'||relname from pg_stat_user_tables where relname like 'table_%'"|more
schemaselect count (*) from event001.table_1
schemaselect count (*) from event001.table_2
When I omit the schemaname from in front of the concatenation operator it gives me this error.
psql database -t -c "select ||'select count (*) from '||schemaname||'.'||relname from pg_stat_user_tables where relname like 'table_%'"|more
ERROR: operator does not exist: || unknown
LINE 1: select ||'select count (*) from '||schemaname||'.'||relname ...
^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts
Chris.
On 17 Aug 2010, at 18:28, Chris Barnes wrote:
psql database -t -c "select ||'select count (*) from '||schemaname||'.'||relname from pg_stat_user_tables where relname like 'table_%'"|more
ERROR: operator does not exist: || unknown
LINE 1: select ||'select count (*) from '||schemaname||'.'||relname ....
^
HINT: No operator matches the given name and argument type(s).
You might need to add explicit type casts
There's nothing before the first concat operator ;)
Alban Hertroys
--
Screwing up is an excellent way to attach something to the ceiling.
!DSPAM:737,4c6ac41b967634613617124!