Ok this is strange. Shouldn't it always be one or the other? Total row
count for the table is 279,096.

doggies=# select count(*) from data where features_bin is null;
 count
--------
 279096
(1 row)

doggies=# select count(*) from data where features_bin is not null;
 count
--------
 279096
(1 row)

On Thu, Nov 26, 2015 at 6:55 PM, Adrian Klaver <adrian.kla...@aklaver.com>
wrote:

> On 11/26/2015 06:10 PM, mrtruji wrote:
>
>> Hi,
>>
>> Thanks for the reply. The limit is just to simplify results for the
>> examples. The same behavior occurs when each of the three queries are
>> not limited. Whenever I try to filter by the original columns and select
>> the new column the resultant values for the new column are empty.
>> Conversely, whenever I select the new column along with original columns
>> without any filtering the resultant values for the original columns
>> return empty. It's as if the added column is disconnected to the table
>> in some way causing problems with queries that combine original columns
>> and the new one.
>>
>> I created and filled in the new column externally using psycopg2 in
>> Python so I'm not sure if that could be the source of the problem...
>>
>
> Just had a thought. Wondering if when you populated the table you added
> all the new_col values without actually populating the other fields. So now
> you have existing rows with the non new_col fields populated and another
> set of rows with new_col populated but not the other fields. Your table
> definition allows NULL in all fields so the above is possible.
>
> What happens if you do:
>
> Select * from data where new_col IS NOT NULL;
>
> select * from data where new_col IS NULL;
>
>
>
>
>> On Thu, Nov 26, 2015 at 5:39 PM, Melvin Davidson <melvin6...@gmail.com
>> <mailto:melvin6...@gmail.com>> wrote:
>>
>>     Is it possible you have more than one row where state = 'CA'?
>>     Putting a LIMIT 1 would then restrict to only 1 row.
>>     Have you tried with no limit? IE:|SELECT new_col FROM data;
>>
>>     |
>>
>>     On Thu, Nov 26, 2015 at 7:13 PM, mrtruji <mrtr...@gmail.com
>>     <mailto:mrtr...@gmail.com>> wrote:
>>
>>         Just added a new bytea type column to an existing psql table and
>>         populated the column entirely with row data. Running into some
>>         strange query results:
>>
>>         When I select the newly added column by itself I get all the
>>         data as expected:
>>
>>         |SELECT new_col FROM data LIMIT 1; Result:
>> \x8481e7dec3650040b.... |
>>
>>         When I try to filter with 'where' on another column in the
>>         table, I get the values from the other columns as expected but
>>         empty from my new_column:
>>
>>         |SELECT id, state, new_col FROM data WHERE state='CA' limit 1;
>>         Result: 123456_1; CA; EMPTY ROW |
>>
>>         The reverse is also true. If I select my new column in
>>         combination with other columns with no 'where' I get the correct
>>         value from my new column but empty for the other columns:
>>
>>         |SELECT id, state, new_col FROM data limit 1; Result: EMPTY ROW;
>>         EMPTY ROW; \x8481e7dec3650040b....|
>>
>>         Thanks to anyone with advice!
>>
>>
>>
>>
>>     --
>>     *Melvin Davidson*
>>     I reserve the right to fantasize.  Whether or not you
>>     wish to share my fantasy is entirely up to you.
>>
>>
>>
>
> --
> Adrian Klaver
> adrian.kla...@aklaver.com
>

Reply via email to