Rumah  >  Soal Jawab  >  teks badan

Mengemas kini sel dalam baris tertentu dan lajur tidak ditentukan dengan kandungan yang mengandungi rentetan tertentu

<p>Saya mempunyai jadual dengan lajur berikut: nama - kursus1 - kursus2 - kursus3. Dua baris kelihatan seperti ini: </p> <pre class="brush:php;toolbar:false;">John - fizik - matematik - seni Sara - matematik - kimia - psikologi</pre> <p>Sekarang John telah ditendang keluar dari kelas matematik, saya mahu menggantikan "matematik" dengan "tiada" dalam barisannya. </p> <p>Apabila saya mencari penyelesaian, saya dapati ini: </p> <pre class="brush:php;toolbar:false;">KEMASKINI tableName SET `course1` = 'none' DI MANA `name`='John' DAN `course1`='math';</pre> <p>Ini mungkin berguna jika saya mengetahui lajur john "matematik" yang direkodkan. Tetapi perkataan itu boleh muncul dalam mana-mana lajur. Apa yang saya perlukan adalah seperti ini: </p> <p>sql_query="Cari baris di mana <code>name</code>='John', kemudian cari lajur di mana kita mempunyai perkataan 'math', cuma gantikan 'math' dengan 'none' di sana. </p> <p>Bolehkah anda membantu saya menyelesaikan masalah ini? </p>
P粉197639753P粉197639753411 hari yang lalu495

membalas semua(1)saya akan balas

  • P粉113938880

    P粉1139388802023-09-05 11:25:34

    Dalam kes ini, saya rasa tiada cara lain selain menilai setiap lajur, seperti ini:

    update
       my_table
    set 
       course1 = if(course1 = 'math', 'none', course1),
       course2 = if(course2 = 'math', 'none', course2),
       course3 = if(course3 = 'math', 'none', course3)
    where
       name = 'John';

    balas
    0
  • Batalbalas