4 messages in com.mysql.lists.mysql-deRe: Spannende Abfrage
FromSent OnAttachments
Marcus Franke27 Jun 2006 07:35 
Sebastian Mendel27 Jun 2006 07:58 
Marcus Franke27 Jun 2006 08:15 
Sebastian Mendel27 Jun 2006 08:42 
Subject:Re: Spannende Abfrage
From:Sebastian Mendel (lis@sebastianmendel.de)
Date:06/27/2006 08:42:05 AM
List:com.mysql.lists.mysql-de

Marcus Franke schrieb:

On Tue, Jun 27, 2006 at 04:35:44PM +0200, Marcus Franke wrote:

Warum hat der char "x" hier eine Wirkung wie eine 0?

Irgendwie verstehe ich das Verhalten nicht. Negiere ich die Abfrage, dann bekomme ich alle Werte, die nicht 0.0000 sind.

Kann mir da mal jemand auf die Sprünge helfen?

Ok,

Ursache gefunden, der Datenbankserver führt ganz still und heimlich einen Typcast durch an statt einen type mismatch zu signalisieren.

Wieso heimlich? Das steht doch im Handbuch das er das macht.

mysql> select CAST("x" as decimal); +----------------------+ | CAST("x" as decimal) | +----------------------+ | 0.00 | +----------------------+

Spannende Abenteuer, die man mit mysql immer wieder erleben kann.

Weiss zufällig jemand, welchen Parameter ich setzen muss um diesen heimlichen Cast unheimlich zu verbieten?

MySQL 5 und den SRICT SQL mode aktivieren