Here's my 5 second guess..

4E5664736... is being interpreted as a number in scientific notation  ..
i.e.  4*10^5664736  and the parser doesn't like that as a field name.

-Hank


On Mon, Dec 20, 2010 at 12:43 PM, Ramsey, Robert L
<robert-ram...@uiowa.edu>wrote:

> I am having the hardest time getting a select as statement right.  Here is
> the full query:
>
> select
> SUM(IF(image='EE0840D00E2ED8A317E5FA9899C48C19',1,0)) as
> EE0840D00E2ED8A317E5FA9899C48C19,
> SUM(IF(image='235C7987796D5B7CEBF56FBDA2BF7815',1,0)) as
> 235C7987796D5B7CEBF56FBDA2BF7815,
> SUM(IF(image='96DC0562ED6E6F7FE789A18E09BC5889',1,0)) as
> 96DC0562ED6E6F7FE789A18E09BC5889,
> SUM(IF(image='D8B0EA710D2EF408391132F451AE724A',1,0)) as
> D8B0EA710D2EF408391132F451AE724A,
> SUM(IF(image='018C4DB7229D7D2BEB040D241739B784',1,0)) as
> 018C4DB7229D7D2BEB040D241739B784,
> SUM(IF(image='98DE1FCA50AC9CE6E0FEA25BAB0177FE',1,0)) as
> 98DE1FCA50AC9CE6E0FEA25BAB0177FE,
> SUM(IF(image='4E5664736F400E8B482EA7AA67853D13',1,0)) as
> 4E5664736F400E8B482EA7AA67853D13,       <--offending line
> SUM(IF(image='FEB810A43A1B275605BD6B69F444700C',1,0)) as
> FEB810A43A1B275605BD6B69F444700C
> from dsrssfeed
>
> If I remove that one line, the query works fine.  If I do:
>
> select  SUM(IF(image='4E5664736F400E8B482EA7AA67853D13',1,0)) as 4E from
> dsrssfeed ;
>
> it works.  But these fail:
>
> select  SUM(IF(image='4E5664736F400E8B482EA7AA67853D13',1,0)) as
> 4E5664736F400E8B482EA7AA67853D13 from dsrssfeed ;
> select  SUM(IF(image='4E5664736F400E8B482EA7AA67853D13',1,0)) as 4E5 from
> dsrssfeed ;
>
> It can't be field name length, since even 4E5 fails, the field name can
> start with a number since 4E succeeds.
>
> Any ideas?
>
> The goal is to see what arbitrary images have information associated with
> them.  The table has two fields:  image is a UID that is the primary key,
> and caption which is a varchar(255) that has information about the image.
>  Images are added and deleted from the table as they are changed on a web
> page.  The UID is generated by a third party program that I have to
> interface with and have no control over.  An array of image UIDs is sent to
> the php script and the script needs to determine which UIDs are present in
> the table.  Rather than make N number of individual queries as I iterate
> through the array, I iterate through the array and build the query on the
> fly to make one query.  Then I iterate through the array again and check the
> value in the field.  1 means the UID has an entry, 0 means it doesn't.  I
> thought doing 1 mysql call would be more efficient than lots of calls as I
> iterate through the array.  But since there will probably never be more than
> 100 images in the table at any one time, it may not make any difference.
>  But now I'm just curious as to why this is happening.
>
> Thanks,
>
> Bob
>
>
>
>
>

Reply via email to