TSQL заявка за анализиране на текст

Имам таблица, която има номер на поръчка, анулирана дата и причина. Полето за причина е полето varchar(255) и е написано от много различни търговски представители и наистина е трудно да се групира по категория причина, която ми трябва, за да генерирам отчет, за да категоризирам причините за анулиране. Кой е най-добрият начин за анализиране на причините с TSQL?

Примерни причини, въведени от търговски представител

cust already has this order going out
cust can not hold for item Called to cancel order
cust doesn't want to pay for shipping
wife ordered same item from different vendor, sent email
cst made a duplicate order, sent email
cst can't hold
Cust doesn't want to go through verification process so is cancelling order
doesn't ant to hold  for Bo
doesn't want
Cust called to cancel the order  He can no longer get the product he wants 
cnt hld
will not comply with export req
cant' hold
Custs request
Cust will not hold for BO
per. cust. request.

Между другото имам SQL Server 2005.


person THEn    schedule 04.12.2009    source източник


Отговори (3)


част от вашия проблем е, че това не са истински кодове на причина. звучи ми като проблем с вашата схема. ако няма предварително дефинирани кодове на причини за справка и разрешавате свободно въвеждане на текст за всяка причина, тогава наистина няма начин да направите това директно, освен изтеглянето на различни причини обратно, което вероятно няма да бъде много полезно.

само една идея, можете ли да добавите друга колона към таблицата, дори ако е във временна или тестова среда и след това да дадете възможност на бизнес потребителите да присвоят код (напр. 1 за неправилни доставки, 2 за дублирани поръчки, 3 за грешни артикул и т.н.) до всяка отмяна на поръчка. след това извършете анализа върху това.

Предполагам, че това е, което очакват от теб, но не знам дали виждам по-добър начин. винаги можете да извършите анализа сами, ако имате авторитета/знанията, но това може да е болезнено, ако имате много анулирания.

редактиране - сега виждам, че сте маркирали това с регулярен израз... би било възможно да настроите определени ключови думи, за да извадите записите, но трябва да има вградена известна толерантност и все още ръчен анализ след това за елементи, които не не попадат в никоя определена категория поради правописни грешки и т.н. /edit

person user10635    schedule 04.12.2009
comment
Благодаря ти. Мислех за това. Но проблемът е, че използваме приложение за обработка на поръчки на трета страна, няма да можем да зададем списък с причини. Но мога да добавя допълнителна колона в таблицата, но въпросът остава същият. - person THEn; 04.12.2009

+1 към @jmatthews, наистина трябва да имате избрани кодове на причина и след това евентуално да разрешите въвеждане в свободна форма за пълната причина.

Ако това не е опция, можете да разгледате текстово групиране. Не очаквайте обаче, че това ще бъде бързо или лесно, все още е отворена тема за изследване и е свързана както с ИИ, така и с машинното обучение.

person Donnie    schedule 04.12.2009

Вижте Търсене на термини в SSIS, ето една статия за четене.

person Damir Sudarevic    schedule 04.12.2009