sql >> Databáze >  >> RDS >> Sqlserver

vložení záznamu do jedné tabulky zkopírováním jednoho řádku jednoho sloupce z jiné tabulky

Nemůžete mít dvě klauzule WHERE v jednom prohlášení:

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')

Musíte změnit druhou část na AND:

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. Srovnávání spravovaných cloudových řešení PostgreSQL – Část první:Amazon Aurora

  2. Velký obchod:SQL Server 2016 Service Pack 1

  3. Chyba při vkládání dat obsahujících jednoduché uvozovky

  4. Zvyšuje nastavení NOT NULL u sloupce v postgresql výkon?