Pereiti prie turinio

sql update jei egzistuoja kita lentele


Rekomenduojami pranešimai

Yra lentelė `surveys`, kurios struktūra: id, sid, expires, datecreated

Sukūrus įrašą `surveys`, atskirai susikūria lentelė `tabl_sid`, kur sid yra tas pats numeris is `surveys`. Tačiau, kai kuriais atvejais įrašas `surveys` neturi `tabl_sid` lentelės.

 

Klausimas: kaip papildyti WHERE, kad dar tikrintu ar egzistuoja table_sid esamam įrašui.

 

UPDATE `surveys`

SET expires = DATE_ADD(datecreated, INTERVAL 7 DAY)

WHERE expires IS NULL AND EXISTS `tabl_`+sid

Redagavo nixas
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Truputį kažkas negerai su tavo struktūra, jeigu kiekvienam įrašui po atskirą lentelę sukuri. Siūlyčiau ją pergalvoti. Bet jeigu ne, tai MySQL yra duombazė information_schema, kurioje yra lentelė tables. Joje yra saugoma informacija apie duombazėse esančias lenteles. Tai gali parightjoininti su šia lenta ir gausi tik tuos įrašus, kuriems egzistuoja atitinkama lentelė.

Redagavo vitalikaz
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...