 |
|
[ SQL ] ต้องการ Join Table ครับ แต่มีปัญหา |
|
 |
|
|
 |
 |
|
Code (SQL)
on code in STRING_SPLIT (condition, ',')
|
 |
 |
 |
 |
Date :
2017-11-15 11:50:54 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
วิเคราะห์และประยุกต์เอาหน่อยสิครับ ไม่น่ายากเลย
|
 |
 |
 |
 |
Date :
2017-11-15 12:31:07 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
กรณีนี้เขียน FUNCTION อย่างเดียวครับ คำสั่งงนี้ STRING_SPLIT น่าจะ SUPPORT 2016 ครับ
Code (SQL)
CREATE FUNCTION SplitString
(
@Input NVARCHAR(MAX),
@Character CHAR(1)
)
RETURNS @Output TABLE (
Item NVARCHAR(1000)
)
AS
BEGIN
DECLARE @StartIndex INT, @EndIndex INT
SET @StartIndex = 1
IF SUBSTRING(@Input, LEN(@Input) - 1, LEN(@Input)) <> @Character
BEGIN
SET @Input = @Input + @Character
END
WHILE CHARINDEX(@Character, @Input) > 0
BEGIN
SET @EndIndex = CHARINDEX(@Character, @Input)
INSERT INTO @Output(Item)
SELECT SUBSTRING(@Input, @StartIndex, @EndIndex - 1)
SET @Input = SUBSTRING(@Input, @EndIndex + 1, LEN(@Input))
END
RETURN
END
GO
วิธีเรียกใช้งาน
Code (SQL)
SELECT Item
FROM dbo.SplitString('Apple,Mango,Banana,Guava', ',')
|
 |
 |
 |
 |
Date :
2017-11-15 16:11:40 |
By :
OOP |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอโทษ ไม่ได้ดูว่าเป็น sql server 2014
เอาแบบง่าย ๆ
Code (SQL)
on concat(',', condition,',') like concat('%,',code,',%')
|
 |
 |
 |
 |
Date :
2017-11-15 17:45:30 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|