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

SQL सर्वर:दो प्रश्नों के साथ UNION का उपयोग कैसे करें जिसमें दोनों का एक खंड है?

आपको उन्हें उपनाम देने और उपश्रेणियों के रूप में उपयोग करने में सक्षम होना चाहिए (आपके पहले प्रयास के अमान्य होने का कारण यह था कि पहले चयन में दो कॉलम (आईडी और प्राप्त दिनांक) थे, लेकिन आपके दूसरे में केवल एक (आईडी) था - साथ ही, प्रकार एक आरक्षित है SQL सर्वर में शब्द है, और इसका उपयोग नहीं किया जा सकता जैसा कि आपके पास एक कॉलम नाम के रूप में था):

declare @Tbl1 table(ID int, ReceivedDate datetime, ItemType Varchar(10))
declare @Tbl2 table(ID int, ReceivedDate datetime, ItemType Varchar(10))

insert into @Tbl1 values(1, '20010101', 'Type_1')
insert into @Tbl1 values(2, '20010102', 'Type_1')
insert into @Tbl1 values(3, '20010103', 'Type_3')

insert into @Tbl2 values(10, '20010101', 'Type_2')
insert into @Tbl2 values(20, '20010102', 'Type_3')
insert into @Tbl2 values(30, '20010103', 'Type_2')

SELECT a.ID, a.ReceivedDate FROM
 (select top 2 t1.ID, t1.ReceivedDate
  from @tbl1 t1
  where t1.ItemType = 'TYPE_1'
  order by ReceivedDate desc
 ) a
union
SELECT b.ID, b.ReceivedDate FROM
 (select top 2 t2.ID, t2.ReceivedDate
  from @tbl2 t2
  where t2.ItemType = 'TYPE_2'
  order by t2.ReceivedDate desc
 ) b


  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 सर्वर लोकलडीबी ऑटो शटडाउन को कैसे रोकें?

  2. SQL सर्वर डेटाबेस में सभी तालिकाओं से सभी प्राथमिक कुंजियों को कैसे छोड़ें - SQL सर्वर / TSQL ट्यूटोरियल भाग 65

  3. WHERE col IN (...) कंडीशन पर सीमा

  4. कैसे ठीक करें "अमान्य वस्तु का नाम 'OPENJSON'।" SQL सर्वर में

  5. समूह में MAX दिनांक रिकॉर्ड में शामिल होना