You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
sql-tools/Import/密控.sql

429 lines
13 KiB

use KunMing_MoShang
SELECT count(1)
FROM TImpMember
DROP TABLE TImpMember
delete TImpMember
SELECT * INTO TImpMember_Bak FROM TImpMember
SELECT * FROM TImpMember
WHERE FMobile = ''
AND = ''
ORDER BY FMobile
DELETE TImpMember
WHERE FMobile = ''
AND = ''
AND = ''
SELECT * FROM TImpMember
WHERE FMobile != ''
AND = ''
AND = ''
AND = ''
AND = ''
ORDER BY FMobile
DELETE TImpMember
WHERE FMobile != ''
AND = ''
AND = ''
AND = ''
AND = ''
SELECT * FROM TImpMember
ORDER BY FMobile
--处理重复
SELECT * FROM TImpMember
WHERE IN(
SELECT FROM TImpMember
WHERE != ''
GROUP BY
HAVING(COUNT(1) > 1)
)
ORDER BY
ALTER TABLE TImpMember ADD FMemId BIGINT
ALTER TABLE TImpMember ADD FCardNo VARCHAR(50)
ALTER TABLE TImpMember ADD FMemNo VARCHAR(50)
ALTER TABLE TImpMember ADD FName VARCHAR(50)
ALTER TABLE TImpMember ADD FGender INT
ALTER TABLE TImpMember ADD FMobile VARCHAR(50)
ALTER TABLE TImpMember ADD FTelephone VARCHAR(50)
ALTER TABLE TImpMember ADD FCardTypeId BIGINT
ALTER TABLE TImpMember ADD FCourseId BIGINT
ALTER TABLE TImpMember ADD FBalance DECIMAL(18,6)
ALTER TABLE TImpMember ADD FRemainTimes INT
ALTER TABLE TImpMember ADD FPurTimes INT
ALTER TABLE TImpMember ADD FPurAmount DECIMAL(18,6)
ALTER TABLE TImpMember ADD FItemId BIGINT
ALTER TABLE TImpMember ADD FCreateDate DATETIME
ALTER TABLE TImpMember ADD FExpiredDate DATETIME
ALTER TABLE TImpMember ADD FCompId BIGINT
ALTER TABLE TImpMember ADD FCardId BIGINT
ALTER TABLE TImpMember ADD FArrear DECIMAL(18,6)
ALTER TABLE TImpMember ADD FPoint DECIMAL(18,6)
ALTER TABLE TImpMember ADD FBirthday DATETIME
ALTER TABLE TImpMember ADD FBirthdayType CHAR
ALTER TABLE TImpMember ADD FDeleted BIT
ALTER TABLE TImpMember ADD FCardState INT
SELECT * FROM TImpMember WHERE FMemo IS not NULL
UPDATE TImpMember SET FMemo = REPLACE(FMemo,'.jpg','') WHERE FMemo LIKE '%.jpg'
AND FMemo IS NOT NULL
UPDATE TMemberCard SET FMemo = REPLACE(FMemo,'.jpg','') WHERE FMemo LIKE '%.jpg'
AND FMemo IS NOT NULL
SELECT * FROM TImpMemberCourse
DELETE TImpMemberCourse
SELECT RIGHT(,LEN() - CHARINDEX('m=',) - 1) FROM TImpMember
UPDATE TImpMember SET FMemId = RIGHT(,LEN() - CHARINDEX('m=',) - 1)
UPDATE TImpMember SET FCardId = dbo.FNNewId() WHERE FCardId IS NULL
UPDATE TImpMember SET FCardNo = FMobile WHERE FCardNo = ''
UPDATE TImpMember SET FCardNo =
UPDATE TImpMember SET FMemNo = FCardNo
UPDATE TImpMember SET FMemNo = FMobile WHERE FMemNo = ''
UPDATE TImpMember SET FName =
UPDATE TImpMember SET FMobile = ISNULL( ,'')
UPDATE TImpMember SET FCompId = dbo.FNCompId('001')
UPDATE TImpMember SET FBalance = cast( as float)
UPDATE TImpMember SET FGender = 0
UPDATE TImpMember SET FName = FMobile WHERE FName = ''
UPDATE TImpMember SET FName = FMemNo WHERE FName = ''
SELECT COUNT(1) FROM TImpMember
WHERE FMemo IS NULL
--合并
ALTER TABLE TImpMember ADD FOldMemId BIGINT NOT NULL DEFAULT 0
ALTER TABLE TImpMemberCourse ADD FOldMemId BIGINT NOT NULL DEFAULT 0
UPDATE TImpMember SET FOldMemId = FMemId
UPDATE TImpMemberCourse SET FOldMemId = FMemId
DROP TABLE #Member
SELECT FMobile,FName,SUM(1) AS FCount,MIN(FMemId) AS FNewMemId INTO #Member FROM TImpMember
WHERE FMobile != ''
GROUP BY FMobile,FName
HAVING(SUM(1)>1)
UPDATE A
SET A.FMemNo = CASE WHEN B.FMobile != '' THEN B.FMobile ELSE (SELECT FMemNo FROM TImpMember AS C WHERE C.FOldMemId = B.FNewMemId) end,
A.FMemId = B.FNewMemId
FROM TImpMEMBER AS A, #Member AS B
WHERE A.FMobile = B.FMobile
AND A.FName = B.FName
UPDATE A
SET A.FMemId = B.FMemId
FROM TImpMemberCourse AS A,TImpMEMBER AS B
WHERE A.FMemId = B.FOldMemId
SELECT * FROM TImpMemberCourse
SELECT * FROM TImpMEMBER WHERE FMobile = '18705460102'
INSERT INTO TMemberCardType(FId,FNo,FName,FValueType,FMaterial,FPrice,FCardFeeAmt,FAcctId,FDeposit,FAcctId2,FDeposit2,FAcctId3,FDeposit3,FTimes,FAlertBalance,FMinRchgAmt,FSalePointMode,FSalePointValue,FRchgPointMode,FRchgPointValue,FPaySmsFee,FTimeCard,FValidityPeriod,FValidityPeriodUnit,FExpiredDate,FDefaultMemo,FCreateTime,FAllowSale,FAllowRchg,FDeptId,FEnabled,FOrder)
SELECT FId =dbo.FNNewId(), , as name,1,FMaterial = 2,0,FCardFeeAmt = 0,FAcctId = 3,FDeposit = 0,FAcctId2 = 0,FDeposit2 = 0 ,FAcctId3 = 0,FDeposit3 = 0,
FTimes = 0,FAlertBalance = 0,FMinRchgAmt = 0,FSalePointMode = 0,FSalePointValue = 0 ,FRchgPointMode = 0,FRchgPointValue = 0,FPaySmsFee = 0,FTimeCard = 0,FValidityPeriod = 100,FValidityPeriodUnit = 1,
FExpiredDate = NULL,FDefaultMemo = '',FCreateTime = GETDATE(),1,1,FDeptId = 0,FEnabled =1,FOrder = 1
FROM TImpMember
WHERE != ''
group BY
INSERT INTO TMemberCardTypeSub(FId,FCompId,FCardTypeId,FAllowSale,FAllowRchg,FEnabled)
SELECT dbo.FNNewId(),C.FId,I.FId,FAllowSale,FAllowRchg,FEnabled
FROM TMemberCardType AS I,TCompany AS C
WHERE I.FId > 1
AND C.FId != 0
AND NOT EXISTS(SELECT TOP 1 1 FROM TMemberCardTypeSub AS B WHERE B.FCompId = C.FId AND B.FCardTypeId = I.FId)
UPDATE A
SET A.FCardTypeId = B.FId
FROM TMemberCardType AS B,TImpMEMBER AS A
WHERE B.FName = A.
SELECT SUM(FBalance) FROM TImpMember
SELECT * FROM TImpMember WHERE FBalance = '17.000000'
SELECT 42486.000000 - 42469
SELECT * FROM TImpMember WHERE FCourses IS null
ALTER TABLE TImpMemberCourse ADD FId BIGINT
ALTER TABLE TImpMemberCourse ADD FCourseId BIGINT
ALTER TABLE TImpMemberCourse ADD FRemainTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FUsedPurTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FPurAmount DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FCompId BIGINT
ALTER TABLE TImpMemberCourse ADD FItemId BIGINT
ALTER TABLE TImpMemberCourse ADD FCreateDate DATETIME
ALTER TABLE TImpMemberCourse ADD FExpiredDate DATETIME
ALTER TABLE TImpMemberCourse ADD FPurTimes DECIMAL(18,6)
ALTER TABLE TImpMemberCourse ADD FAdjustPrice DECIMAL(18,6)
UPDATE A
SET A.FItemId = B.FId,
A.FCourseId = B.FCourseId
FROM TImpMemberCourse AS A,TImpItem AS B
WHERE A.item = B.FName
SELECT * FROM TImpItem
SELECT * FROM TImpMemberCourse
UPDATE TImpMemberCourse SET FId = id
UPDATE TImpMemberCourse SET FRemainTimes = count WHERE count != '不限'
UPDATE TImpMemberCourse SET FPurTimes = count WHERE count != '不限'
UPDATE TImpMemberCourse SET FUsedPurTimes = 0
UPDATE TImpMemberCourse SET FCompId = 1
UPDATE TImpMemberCourse SET FCreateDate = getdate()
UPDATE TImpMemberCourse SET FExpiredDate = null
UPDATE TImpMemberCourse SET FCalcMode = 1
UPDATE TImpMemberCourse SET FCalcMode = 2 WHERE count = '不限'
select * from TImpMember WHERE FMemId = 7496237
ALTER TABLE TImpMemberCourse ADD FCalcMode INT
U
DROP TABLE TImpItem
select dbo.FNNewId() AS FId,dbo.FNNewId() AS FCourseId, 'MIK_' + item AS FNo, item AS FName INTO TImpItem
from TImpMemberCourse
GROUP BY item
DELETE TCourse WHERE FItemId IN(SELECT FId FROM TItem WHERE FName IN(SELECT FName FROM TImpItem))
delete TItem WHERE FName IN (SELECT FName FROM TImpItem)
INSERT TItem(FId,FNo,FNoOfPad,FName,FAbbr,FTypeId,FBriefCode,FDescription,FPriceMode,FIsService,FStatTimes,FCustom1,FCustom2,FCustom3,FEnabled,FPrice,FVipPrice,FTime,FDctId,FPointMode,FPointValue,FDeptId,FAllowBooking)
SELECT FId,FNo,FName,FName,FName,0,dbo.FNGetFirstPinYin(FName),'''',1,1,1,'''','''','''',1,0,0,0,0,0,0,0,1
FROM TImpItem
INSERT INTO TCourse(FId,FNo,FName,FBriefCode,FItemId,FPackId,FSequence,FTypeId,FTimes,FFreeTimes,FDurable,FValidityPeriodUnit,FValidityPeriod,FCreateDate,FExpiredDate,FDescription,FEnabled,FPrice,FAmount,FCalcMode)
SELECT FCourseId AS FId,
I.FNo + 'L1',
I.FName + '-' + '疗程1' AS FName,
'' AS FBriefCode,
I.FId AS FItemId,
0 AS FPackId,
1 AS FSequence,
4822791688865541970 AS FTypeId,
1 AS FTimes,
0 AS FFreeTimes,
0 AS FDurable,
0 AS FValidityPeriodUnit,
0 AS FValidityPeriod,
getdate() AS FCreateDate,
NULL AS FExpiredDate,
'' AS FDescription,
1 AS FEnabled,
0 AS FPrice,
0 AS FAmount,
1 AS FCalcMode
FROM TImpItem AS I
INSERT INTO TMember(
FMemId,
FMemNo,
FName,
FBriefCode,
FTypeId,
FCompId,
FCreateDate,
FGender,
FBirthdayType,
FBirthday,FTelephone,FMobilePhone,FQQ,FWeChat,FIdCard,FEmail,FAddress,FProId,FCPW,FQPW,
FChargeEmpId,FPoint,FRecvConsSMS,FRecvBulkSMS,FMemo,FCustom1,FCustom2,FCustom3,FCustom4,FCustom5)
SELECT FMemId AS FMemId,
FMemNo AS FMemNo,
FName AS FName,
dbo.FNGetFirstPinYin(FName),
0 AS FTypeId,
FCompId AS FCompId,
ISNULL(FCreateDate ,'1900-01-01') AS FCreateDate,
FGender AS FGender,
'G' AS FBirthdayType,
FBirthday AS FBirthday,
'' AS FTelephone,
ISNULL(FMobile,'') AS FMobilePhone,
'' AS FQQ,
'' AS FWeChat,
'' AS FIdCard,
'' AS FEmail,
'' AS FAddress,
0 AS FProId,
'' AS FCPW,
'' AS FQPW,
0 AS FChargeEmpId,
SUM(ISNULL( 0,0)) AS FPoint,
1 AS FRecvConsSMS,
1 AS FRecvBulkSMS,
ISNULL('','') AS FMemo,
'' AS FCustom1,'' AS FCustom2,'' AS FCustom3,'' AS FCustom4,'' AS FCustom5
from TImpMember
GROUP BY FMemId,FMemNo,FName,FMobile,FBirthday,FGender,FCompId,FCreateDate
SELECT * FROM #T
ORDER BY
DROP TABLE #T
SELECT FMemId,FMemNo,FName,FMobile,FBirthday,FGender,FCompId,FCreateDate
INTO #T
FROM TImpMember
GROUP BY FMemId,FMemNo,FName,FMobile,FBirthday,FGender,FCompId,FCreateDate
SELECT FMemNO,SUM(1) FROM #T
GROUP BY FMemNo
HAVING(SUM(1)> 1)
select * from TimpMember WHERE FMemNO = '000029'
update TImpMember SET FDeleted = 1 WHERE FMemId =6405618
SELECT count(2) FROM TImpMember
WHERE FCourses IS NULL
INSERT INTO TMemberCard(
FCardId,
FCardNo,
FCardFaceNo,
FTypeId,
FValueType,
FCompId,
FMemId,
FState,
FCreateDate,
FExpiredDate,
FTotalTimes,
FUsedTimes,
FSaleCompId,
FSaleBillId,
FMemo)
SELECT
FCardId AS FId,
FCardNo AS FNo,
FCardNo AS FFaceNo,
FCardTypeId AS FTypeId,
(SELECT FValueType FROM TMemberCardType WHERE FId = FCardTypeId) AS FValueType,
FCompId AS FCompId,
FMemId AS FMemId,
1 AS FState,
ISNULL(FCreateDate,1900) AS FCreateDate,
ISNULL(FExpiredDate,'2117-03-31'),
0 AS FTotalTimes,
0 AS FUsedTimes,
FCompId AS FSaleCompId,
0 AS FSaleBillId,
ISNULL(FMemo,'') AS FMemo
FROM TImpMember
INSERT TMemberCardAccount(FMemId,FId,FCardId,FAcctId,FDeposit,FBalance,FArrear,FCreateDate,FExpiredDate,FMemo)
SELECT FMemId,dbo.FNNewId(),FCardId AS FCardId,3,FBalance,FBalance,0,FCreateDate,NULL,''
FROM TImpMember AS A
WHERE FDeleted = 0
INSERT TMemberCardAcctHist(FId,FMemId,FCardId,FAcctId,FTime,FCardTypeId,FCompId,FBillType,FBizType,FTransId,FTransNo,FInAmount,FOutAmount,FBalance,FArrear,FRecordTime,FMemo)
select dbo.FNNewId(),A.FMemId,A.FCardId,3,getdate(),A.FCardTypeId,A.FCompId,'DR','Import',0,'',A.FBalance,0,A.FBalance,0,getdate(),'从老系统中导入'
FROM TImpMember AS A
WHERE FDeleted = 0
INSERT TMemberCourse(FId,FMemId,FCourseId,FMemPackId,FItemId,FCompId,FPurTimes,FPurAmount,FFreeTimes,FUsedPurTimes,FFreeAmount,FPurchaseDate,FExpiredDate,FBizType,FTransId,FArrear,FDurable,FMemo,FCalcMode,FAdjustPrice)
SELECT FId,FMemId,FCourseId,0,FItemId,FCompId,FPurTimes,ISNULL(FPurAmount,0),0,FUsedPurTimes,0,FCreateDate,FExpiredDate,'DR.Import',0,0,0,'',1,ISNULL(FAdjustPrice,0)
FROM TImpMemberCourse
--WHERE FCourseId IS NOT NULL
WHERE FMemId IS NOT NULL
AND FId NOT IN(SELECT FId FROM TMemberCourse)
INSERT INTO TMemberCourseLog(FId,FMemId,FCardId,FPackId,FCourseId,FTime,FInPurTimes,FInFreeTimes,FOutPurTimes,FOutFreeTimes,
FCompId,
FBillType,FBizType,FBillId,FBillNo,FBillDetailId)
SELECT dbo.FNNewId(),FMemId,FId,0,FCourseId,FTime = getdate(),FPurTimes,FUsedPurTimes,0,0,
FCompId,
'DR','Import',0,'',0
FROM TImpMemberCourse
SELECT * FROM TImpMember WHERE FOldMemId != FMemId
SELECT * FROM TImpMember WHERE FAvatar IS NOT NULL
SELECT * FROM TImpMemberTransHist
INSERT TMemberOldTransHist(FId,FMemId,FTime,FCardId,FCompId,FBillType,FBizType,FTransNo,FContent,FPrice,FQuantity,FAmount,FPayment,FEmployee,FMemo)
SELECT dbo.FNNewId(),A.FMemId,A.,0,M.FCompId,'DR','Import',,,0,1,0,,,''
FROM TImpMemberTransHist AS A,TImpMember AS M
WHERE A.FMemId = M.FMemId