sql >> Database >  >> RDS >> Sqlserver

record in één tabel invoegen door een enkele rij van een enkele kolom uit een andere tabel te kopiëren

U kunt geen twee WHERE-clausules hebben in één verklaring:

insert into RECEIVE(Aname , Permission)
  select Aname , 'select' 
  from SEND
  WHERE Aname = 'GREAME'   <=== WHERE #1
  where not exists         <=== WHERE #2
    (select *  from RECEIVE where aname = 'GREAME' and Permission = 'select')

Je moet het tweede deel veranderen in een EN:

insert into RECEIVE(Aname , Permission)
  select Aname , 'select' 
  from SEND
  WHERE Aname = 'GREAME'  
  AND not exists
    (select *  from RECEIVE where aname = 'GREAME' and Permission = 'select')



  1. Prestatie-implicaties van MySQL-gebeurtenisplanning

  2. Vervangen in querysyntaxis

  3. is het sneller om rijen in de volgorde van de primaire sleutel in te voegen?

  4. MYSQL toont 0 zelfs als de resultaten niet bestaan