Jump to content
php.lv forumi

Kā pateikt datubāzes rindiņas izmēru ko salīdzinam?


IM24LV

Recommended Posts

Ir aptuveni šāds kods:

 

$resulta = dbquery(

"SELECT * FROM db WHERE ".substr("title_year", 0,4)." = '$year' LIMIT 4");

 

 

datubāzē ievadītajā gads aiz tā 2008 seko .03.04 vai kas cits, kādā veidā es varu pateikt lai atlasa tikai tur kur ir vienāds ar manis iedoto 4ciparu gadu?

 

 

respektīvi, kādā veidāveicama substr funkcija selectojot no datubāzes?

Link to comment
Share on other sites

ja pareizi sapratu ko vēlies, tad

 

SELECT * FROM db WHERE YEAR(datuma_lauks) = 2008 LIMIT 4

 

Tiesa gan, ka datuma_lauks jābūt saglabātam kā "date" laukam. Savādāk tev palīdzēs mysql substr f-ja

Edited by Vebers
Link to comment
Share on other sites

a kāds būtu pareizais pieraksts? ar == nesanāk + substr vietā pēc manuāļa sanāk, ka ir jābū substring. ar šādu nesanāk:

neizdodas ne ar bub piemēru, ne ar manuāļa dotajiem paraugiem.

SUBSTRING(title_year, 0, 4) = '$year'

Link to comment
Share on other sites

nū ar manu variantu nekādus errorus neizmet, vienkarši neko neatlasa, ar tavu variantu izmet paziņojumu

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '== 2004 AND category = 'j'

 

ja noņem to vienādības zīmīti tad atkal neko neatlasa, parādās tukšs ekrāns

Link to comment
Share on other sites

Nu tādā gadījumā, kad neko neatlasa, tas nozīmē, ka neviens ieraksts neatbilda norādītajam WHERE nosacījumam. Skaties (debugo), kas tur ir nepareizs. Vai tiešām programmēšanas pamati te ir jāmāca...

Link to comment
Share on other sites

×
×
  • Create New...