Expand|Select|Wrap|Line Numbers
- CREATE FUNCTION dbo.fnParseCSV
- (
- @ExcludedCourses varchar(255)
- )
- RETURNS varchar(255)
- AS
- BEGIN
- DECLARE @ParsedExcludedCourses varchar(255)
- DECLARE @ExcludedCourse varchar(10)
- DECLARE @Pos int
- WHILE LEN(@ExcludedCourses) > 0
- BEGIN
- SET @Pos = CHARINDEX(',',@ExcludedCourses)
- IF @Pos = 0
- BEGIN
- SET @ParsedExcludedCourses = ISNULL(@ParsedExcludedCourses,'') + '''' + LTRIM(@ExcludedCourses) + ''''
- END
- ELSE
- BEGIN
- SET @ExcludedCourse = '''' + SUBSTRING(@ExcludedCourses, 1, @Pos - 1) + ''''
- SET @ParsedExcludedCourses = @ExcludedCourse + ',' + ISNULL(@ParsedExcludedCourses,'')
- END
- IF @Pos = 0
- BEGIN
- SET @ExcludedCourses = ''
- END
- ELSE
- BEGIN
- SET @ExcludedCourses = LTRIM(SUBSTRING(@ExcludedCourses, @Pos + 1, LEN(@ExcludedCourses) - @Pos))
- END
- END
- RETURN @ParsedExcludedCourses
- END
- GO
Expand|Select|Wrap|Line Numbers
- DECLARE @courses varchar(255)
- SET @courses = 'COL 100,COM 100,MAT 100'
- SELECT dbo.fnParseCSV(@courses)
- Results: 'COL 100','COM 100','MAT 100'
Expand|Select|Wrap|Line Numbers
- DECLARE @courses varchar(255)
- SET @courses = 'COL 100,COM 100,MAT 100'
- SET @courses = dbo.fnParseCSV(@courses)
- SELECT *
- FROM Courses
- WHERE CourseId IN (@courses)
Expand|Select|Wrap|Line Numbers
- SELECT *
- FROM Courses
- WHERE CourseId IN ('COL 100','COM 100','MAT 100')