Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

błąd w instrukcjach Multiple Select w instrukcji Insert

Po prostu zmień WARTOŚCI na WYBIERZ i usuń nawiasy zewnętrzne.

INSERT INTO dbo.Products 
(ProductName, 
 SupplierID, 
 CategoryID, 
 UnitsInStock, 
 UnitsOnOrder, 
 ReorderLevel, 
 Discontinued)
SELECT  
'Twinkies' , 
 (SELECT SupplierID FROM dbo.Suppliers WHERE CompanyName = 'Lyngbysild'),
 (SELECT CategoryID FROM dbo.Categories WHERE CategoryName = 'Confections'), 
 0, 
 0, 
 10, 
 0

Możesz również potrzebować TOP 1 na podwyrażeniach, ale to dałoby inny komunikat o błędzie:podzapytanie zwróciło więcej niż jedną wartość.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zwrócić kolumny dynamiczne z wartości zgrupowanych w programie SQL Server (procedura składowana)

  2. Jak mogę utworzyć ograniczenie unikatowe SQL na podstawie 2 kolumn?

  3. Uzyskaj pierwszy dzień tygodnia w SQL Server

  4. SQL Server używający symboli wieloznacznych w IN

  5. Wiodący symbol wieloznaczny w wyszukiwaniu pełnotekstowym programu SQL Server