Guest User

Untitled

a guest
Jan 22nd, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. 0 - None
  2. 1 - IDoNotWishToFurnish
  3. 2 - HispanicOrLatino
  4. 4 - NotHispanicOrLatino
  5. 8 - Mexican
  6. 16 - PuertoRican
  7. 32 - Cuban
  8. 64 - OtherHispanicOrLatino
  9.  
  10. PersonID Name Ethnicity Ethnicity_Name
  11. 1 Joe Smith 26 HispanicOrLatino,Mexican,PuertoRican
  12.  
  13. CREATE TABLE Application (
  14. ApplicationID INT,
  15. EthnicityID INT,
  16. PRIMARY KEY (ApplicationID, EthnicityID)
  17. );
  18.  
  19. CREATE TABLE Ethnicity (
  20. EthnicityID TINYINT,
  21. EthnicityName VARCHAR(128),
  22. PRIMARY KEY (EthnicityID)
  23. );
  24.  
  25. INSERT INTO Ethnicity (EthnicityID, EthnicityName)
  26. VALUES
  27. (1, 'Asian'),
  28. (2, 'Hispanic'),
  29. (4, 'Latino');
  30.  
  31. DECLARE @InputApplicationID INT = 1;
  32. DECLARE @InputEthnicityIDs INT = 5; --Asian | Latino
  33.  
  34. INSERT INTO ApplicationEthnicity (ApplicationID, EthnicityID)
  35. SELECT @InputApplicationID,
  36. E.EthnicityID
  37. FROM Ethnicity AS E
  38. WHERE E.EthnicityID & @InputEthnicityIDs = E.EthnicityID; --bitwise AND operation
  39.  
  40.  
  41. SELECT *
  42. FROM ApplicationEthnicity;
  43.  
  44. DECLARE @QueryApplicationID INT = 1;
  45. SELECT STUFF(
  46. (Select ', ' + E.EthnicityName AS [text()]
  47. FROM dbo.ApplicationEthnicity AE
  48. INNER JOIN dbo.Ethnicity E
  49. ON AE.EthnicityID = E.EthnicityID
  50. WHERE AE.ApplicationID = @QueryApplicationID
  51. FOR XML PATH (''))
  52. ,1,1,'')
Add Comment
Please, Sign In to add comment