Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

di mana kesalahan dalam kode sql saya?

JOIN t2 ON t1.wid = t1.wid

maksudmu itu? atau maksud Anda t1.wid =t2.wid? dalam hal ini Anda ingin bergabung dengan kiri.

EDIT

Oke, jadi Anda memperbaikinya. Itu tidak akan menampilkan hasil apa pun kecuali ada baris di t2 yang memiliki lebar yang cocok dengan baris di t1 dengan lebar yang sama.

Jika Anda menginginkan hasil, ubah menjadi ini:

'SELECT * FROM t1
          LEFT JOIN t2 ON t1.wid = t2.wid
          WHERE t2.wid IS NULL
          LIMIT ' . $number;

EDIT BERIKUTNYA

Jika tujuannya adalah untuk memperbarui t2 dengan nilai dari t1 yang TIDAK SUDAH ada di t2, maka itu akan menjadi seperti ini:

'INSERT INTO t2 
   SELECT t1.* FROM t1
     LEFT JOIN t2 
        ON t1.wid = t2.wid
     WHERE t2.wid IS NULL
     LIMIT ' . $number;

Langkah yang hilang hanyalah mengembalikan hasil t1, lalu memasukkannya ke t2.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL INSERT INTO table VALUES.. vs INSERT INTO table SET

  2. Bagaimana cara mengatur global event_scheduler=ON bahkan jika MySQL di-restart?

  3. Bagaimana cara mendeteksi bahwa transaksi telah dimulai?

  4. Kolom 'id' di mana klausanya ambigu

  5. MySQL menghitung tanggal berturut-turut untuk rentetan saat ini