I'm working on it... In T-SQL, it would be like this:
(Yes, I'm aware that this table design of Candidate is silly!!!)
.CREATE TABLE Candidate(
CandidateID INT IDENTITY,
FirstName VARCHAR(15) NOT NULL
CONSTRAINT pkCandidate PRIMARY KEY (CandidateID),
CONSTRAINT uqFirstName UNIQUE (FirstName));
GO
CREATE TABLE CandidateSkills(
SCandidateID INT,
Skill VARCHAR(10)
CONSTRAINT pkCS PRIMARY KEY (ScandidateID, Skill),
CONSTRAINT fkCandidate FOREIGN KEY (SCandidateID) REFERENCES Candidate(CandidateID));
GO
Now add some recordsINSERT INTO Candidate(FirstName) VALUES ('John'),('Jane'),('Robert');
INSERT INTO CandidateSkills(SCandidateID,Skill)
VALUES (1,'.Net'),(1,'C#'),(2,'C#'),(3,'BA');;
T-SQL Answer... well, a start...DECLARE @Skill1 VARCHAR(10) = 'C#',
@Skill2 VARCHAR(10) = '.Net';
SELECT *
FROM Candidate c
WHERE EXISTS (
SELECT 1
FROM CandidateSkills cs
WHERE cs.SCandidateID = c.CandidateID
AND cs.Skill= @Skill1 )
AND EXISTS (
SELECT 1
FROM CandidateSkills cs
WHERE cs.SCandidateID = c.CandidateID
AND cs.Skill=@Skill2 )
This does the ANDing of the filters (unlike the OR that IN() does.)
Not sure how to do the ANDing from SSRS....