Subject | Re: Desperately Seeking FB 2.0 Beta 1 ! |
---|---|
Author | dr_bentonquest |
Post date | 2006-02-14T19:16:49Z |
> >> 1) What errors? You might want to list them here, perhaps it'sSorry, actually the field name is 'REMOLQUE', but I was typing in a
> >> a known thing or perhaps there's a workaround.
> > SELECT ID,STATUS FROM TRACKING WHERE CASE='123'
> >
> > Results:
> > ID,STATUS
> > ---------
> > 12,20
> > 13,30
> > 14,40
> >
> > So far so good. But when I try this:
> >
> > SELECT ID,STATUS FROM TRACKING WHERE CASE='123' AND STATUS<50
> >
> > nothing is returned. I've recomputed indexes but no luck.
> Please give us more detailed informations: platform,Tracking table
> structure , indexes,plan etc...
>
> Why you use CASE as table column name ?
> Isn't it a reserved word ?
hurry and because I wanted to be clear, I typed in a meaningful word.
I found this bug(?) while using the just released Firebird Beta 2 for
Windows *and* Linux Classic version.
As requested, here's the relevant information:
-------------------------
'TRACKING' TABLE STRUCTURE
-------------------------
CREATE TABLE TRACKING (
ID INTEGER NOT NULL,
IMPEXP IMPOEXPO /* IMPOEXPO = CHAR(1) NOT NULL CHECK (VALUE
IN ('I','E')) */,
FECHA DATE NOT NULL,
HORA VARCHAR(5) NOT NULL,
TRACTOR INTEGER NOT NULL,
REMOLQUE VARCHAR(15) NOT NULL,
TIPOREM SMALLINT NOT NULL,
COMPANIA SMALLINT NOT NULL,
CAROVAC CAROVACI /* CAROVACI = CHAR(1) default 'C' NOT NULL
CHECK (VALUE IN ('C','V','T')) */,
CLIENTE INTEGER NOT NULL,
AGENTE INTEGER NOT NULL,
ORIGEN VARCHAR(15),
DESTINO VARCHAR(15),
OBSERVA VARCHAR(80),
CONTROL INTEGER default 0 NOT NULL,
STATUS SMALLINT NOT NULL,
OPERADOR SMALLINT NOT NULL,
PROPFORA PROPIOFORAN /* PROPIOFORAN = CHAR(1) DEFAULT 'P' NOT
NULL CHECK (VALUE IN ('P','F')) */,
OPERFORAN VARCHAR(25),
CONTRAN INTEGER default 0,
ODOMETRO INTEGER default 0,
SALIDA INTEGER default 0 NOT NULL,
PRONUMBER VARCHAR(20),
HORADOCS VARCHAR(5),
PRIORIDAD SMALLINT,
IDTRASLA INTEGER,
FACTURA VARCHAR(20),
FECHAFAC DATE,
PEDIMENTO VARCHAR(20),
REFERENCIA VARCHAR(20)
);
---------
QUERY # 1 (RETURNS SEVERAL RECORDS WHITH STATUS < 60)
---------
select id,status
from tracking
where remolque =563075
---------
QUERY # 2 (NOTHING IS RETURNED)
---------
select id,status
from tracking
where remolque =563075 and status<60
---------------------------
QUERY PLAN FOR BOTH QUERIES
---------------------------
PLAN (TRACKING INDEX (TRACK_REM))
---------------------------
INDEX USED BY THE OPTIMIZER
---------------------------
CREATE INDEX TRACK_REM ON TRACKING (REMOLQUE, STATUS, CONTROL);
Hope this helps,
-Benton