Autor Zpráva
luma64
Profil
Zdravim, mam nasledujuci select nad 2 tabulkami, pricom sa mi z tabulky jqcalendar nevypisu pozadovane hodnoty. Kde mam pls v selecte chybu ?. Z druhej sa mi urcite zaznamy vypisu.
select jqcalendar.EndTime,  jqcalendar.dg_vykon, concat(t.tbl_row,'_',t.tbl_col) as pos, t.tbl_id, t.sub_id, t.rc,  jqcalendar.StartTime
from redips_timetable t
left join jqcalendar  ON substr(t.rc,0,10) = substr( jqcalendar.rc,0,10) and ( left(t.starttime,10) = left( jqcalendar.starttime,10) and left(t.starttime,10) ) like '%$datum%'
Kajman
Profil
luma64:
Kde mam pls v selecte chybu ?

Pokud dotaz končí chybou, tak si ji vypište. Pokud se provede, ale nic nevrátí, tak nejsou záznamy v tabulce redips_timetable. Pokud jsou hodnoty z jqcalendar nullové, tak v ní nejsou řádky odpovídající uvedeným podmínkám.
luma64
Profil
Ako som pisal vyssie, nevypisu sa hodnoty, ktore urcite existuju,. Takto sa vypisu zduplikovane:

"EndTime","dg_vykon","pos","tbl_id","sub_id","rc","StartTime"
"2013-04-08 09:30:00","as plastika ","1_1",519,"201208","201208","2013-04-08 08:00:00"
"2013-04-08 10:30:00","sosovka","1_1",519,"201208","201208","2013-04-08 08:00:00"
peta
Profil
Nebo si vypis vsechny hodnoty odpovidajici kazde podmince zvlast, jenom id sloupce a udaj, ktery te zajima. Hod to do excelu a porovnem shodu sloupcu. Pak tam uvidis, ze se to neshoduje a v cem presne.
Mimochodem, zacal bych asi nejdriv LIKE. Zrusil u nej jedno procento '$datum%'. Mozna na nej pouzil trim. Az pak bych porovnaval 10 znaku z ostatnich sloupcu.
Tori
Profil
luma64:
Máte tam nějak divně závorky, nemělo to být takhle?
... ON substr(t.rc,0,10) = substr(jqcalendar.rc,0,10) 
and left(t.starttime,10) = left(jqcalendar.starttime,10) 
and left(t.starttime,10) like '%$datum%'
?
Jinak když už ten sloupec je DATETIME, tak místo LEFT můžete používat DATE(sloupec1) = DATE(sloupec2), připadá mi to podstatně čitelnější (totiž když vidím upravovat čas řetězcovou funkcí, tak automaticky předpokládám, že datumy jsou uložené jako řetězce a že chyba vzniká tam).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0