--schema
CREATE TABLE script
(
id int identity primary key,
details varchar(200)
);
INSERT INTO script
(details)
VALUES
('Pain Medication. 20 mg/100 mL NS (0.2mg/mL) Therapy: IV PCA Adult/Qualifier: Standard Continuous Rate = 0 mg/hr, IV, Routine PCA Dose = 0.4 mg'),
('Pain Medication. 300 mg/100 mL NS (0.2mg/mL) Therapy: IV PCA Adult/Qualifier: Standard Continuous Rate = 0 mg/hr, IV, Routine PCA Dose = 0.4 mg');
--Dosage
SELECT
SUBSTRING(
SUBSTRING(
details,PATINDEX('%[0-9]%',details),
(select (PATINDEX('%[/]%',details)-PATINDEX('%[0-9]%',details)))),
0, PATINDEX('%[ ]%',SUBSTRING(
details,PATINDEX('%[0-9]%',details),
(select (PATINDEX('%[/]%',details)-PATINDEX('%[0-9]%',details)))))) as [Dosage]
from script
- 단위
SELECT
SUBSTRING(
SUBSTRING(
details,PATINDEX('%[0-9]%',details),
(select (PATINDEX('%[/]%',details)-PATINDEX('%[0-9]%',details)))),
PATINDEX('%[ ]%',SUBSTRING(
details,PATINDEX('%[0-9]%',details),
(select (PATINDEX('%[/]%',details)-PATINDEX('%[0-9]%',details))))),
3) as [Units]
from script
SQL 바이올린 : http://sqlfiddle.com/#!6/4e0b6/38
SELECT SUBSTRING ('통증 약물 20 밀리그램/NS 100 ㎖ (0.2 ㎎/㎖) 치료 :. IV PCA 성인/정자 : 표준 속도 = 0 연속 PATINDEX ('% [0-9] %', '진통제 20 mg/100 mL NS (0.2 mg/mL) 치료 : IV PCA 성인/한정어 : 표준 연속 속도 = 0 mg/hr, IV, 일상 PCA 투여 량 = 0.4 mg '), 5) - 장난감을 조금이라도 가지고 놀면 약간의 숫자를 다룰 수 있습니다. – TMNT2014
여기를보십시오 : http://blogs.lessthandot.com/index.php/datamgmt/datadesign/extracting-numbers-with-sql-server/ –
"통증 약물"은 항상 원하는 복용량보다 앞서 있습니까? 슬래시가 항상 따라 다니는가? –