Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL क्वेरी सहायता - शर्त के आधार पर एकाधिक कॉलम में शामिल होना

आप इसे कुछ इस तरह कर सकते हैं (अनचाहे):

select 
  t.Buyer, 
  t.Seller, 
  case when t.Buyer like 'B%' THEN (select BookName from Book where BookId = t.Buyer)
                              ELSE (select CpName from Counterparty where CPId = t.Buyer)
  end BuyerName,
  case when t.Buyer like 'B%' THEN (select DeskName from Desk where BookId = t.Buyer)
                              ELSE NULL
  end BuyerDeskName,
  case when t.Seller like 'B%' THEN (select BookName from Book where BookId = t.Seller)
                               ELSE (select CpName from Counterparty where CPId = t.Seller)
  end SellerName,
  case when t.Seller like 'B%' THEN (select DeskName from Desk where BookId = t.Seller)
                               ELSE NULL
  end SellerDeskName,
from 
  Trade t

आपकी समस्या यह है कि, जिस तालिका में आप शामिल होना चाहते हैं, वह डेटा संचालित है, आप इसे FROM क्लॉज में निर्दिष्ट नहीं कर सकते।



  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 सर्वर में sys.objects, sys.system_objects और sys.all_objects के बीच अंतर

  2. SQL सर्वर डेटाबेस स्नैपशॉट -1

  3. कॉलम की अज्ञात संख्या को कैसे पिवट करें और SQL सर्वर में कोई कुल नहीं है?

  4. चालू माह से पहले डेटा लौटाएं

  5. SQL सर्वर प्रबंधन स्टूडियो और Transact SQL में GO का क्या उपयोग है?