Firebird 1.5

SQL> CREATE TABLE test1(a VARCHAR(100));
SQL> INSERT INTO test1 VALUES('501');
SQL> INSERT INTO test1 VALUES('  502  ');
SQL> SELECT * FROM test1 WHERE a=501;

A
===============================================================================
501

SQL> SELECT * FROM test1 WHERE a=502;

A
===============================================================================
  502

SQL> SELECT * FROM test1 WHERE a<'502';

A
===============================================================================
501
  502

SQL> CREATE TABLE test2(b INTEGER);
SQL> INSERT INTO test2 VALUES(503);
SQL> INSERT INTO test2 VALUES(504);
SQL> SELECT * FROM test2 WHERE b='503';

           B
============

         503

SQL> SELECT * FROM test2 WHERE b>'503';

           B
============

         504

e

Thursday, May 13, 2004, 4:42:24 AM, DRH wrote:

> George Ionescu wrote:
>> 
>> However, wanting to test how the engine compares strings and numbers:
>> 
>> SELECT 'match' WHERE '500' = 500;
>> 
>> returns 'match'; also, the following statements return the same result:
>> 
>> SELECT 'match' WHERE '    500    ' = 500;
>> SELECT 'match' WHERE '500' = 499 + 1;
>> 

> Who can tell me what other SQL database engines do with
> the following?

>     CREATE TABLE test1(a VARCHAR(100));
>     INSERT INTO test1 VALUES('501');
>     INSERT INTO test1 VALUES('  502  ');
>     SELECT * FROM test1 WHERE a=501;
>     SELECT * FROM test1 WHERE a=502;
>     SELECT * FROM test1 WHERE a<'502';

> Or how about this:

>     CREATE TABLE test2(b INTEGER);
>     INSERT INTO test2 VALUES(503);
>     INSERT INTO test2 VALUES(504);
>     SELECT * FROM test2 WHERE b='503';
>     SELECT * FROM test2 WHERE b>'503';




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to