Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Подзаявката на SQL Server върна повече от 1 стойност. Това не е разрешено, когато подзаявката следва =, !=, <, <=,>,>=

Опитайте това:

SELECT
    od.Sku,
    od.mf_item_number,
    od.Qty,
    od.Price,
    s.SupplierId,
    s.SupplierName,
    s.DropShipFees,
    si.Price as cost
FROM
    OrderDetails od
    INNER JOIN Supplier s on s.SupplierId = od.Mfr_ID
    INNER JOIN Group_Master gm on gm.Sku = od.Sku
    INNER JOIN Supplier_Item si on si.SKU = od.Sku and si.SupplierId = s.SupplierID
WHERE
    od.invoiceid = '339740'

Това ще върне няколко реда, които са идентични с изключение на cost колона. Вижте различните стойности на разходите, които се връщат, и разберете какво причинява различните стойности. След това попитайте някого коя стойност на разходите иска и добавете критериите към заявката, която ще избере тази цена.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да задам сортиране за връзка в SQL Server?

  2. 11 най-добри практики за индекс на SQL Server за подобрена настройка на производителността

  3. Стойност на производителността на водачите COMB

  4. Как да намерите имена на колони за всички таблици във всички бази данни в SQL Server

  5. Типове курсори на SQL Server - Статичен курсор само за препращане | Урок за SQL Server / Урок за TSQL