59 lines
3.3 KiB
SQL
59 lines
3.3 KiB
SQL
-- ==========================================
|
|
-- Populate / refresh spells table from scrolls
|
|
-- ==========================================
|
|
INSERT INTO spells (
|
|
name, WAR, MNK, WHM, BLM, RDM, THF, PLD, DRK, BST,
|
|
BRD, RNG, SAM, NIN, DRG, SMN, BLU, COR, PUP, DNC,
|
|
SCH, GEO, RUN
|
|
)
|
|
SELECT
|
|
-- Strip off leading "Scroll of " (case-insensitive)
|
|
regexp_replace(name, '^scroll of\\s+', '', 'i') AS name,
|
|
|
|
substring(description FROM 'WAR\\s+Lv\\.\\s*(\\d+)')::int AS WAR,
|
|
substring(description FROM 'MNK\\s+Lv\\.\\s*(\\d+)')::int AS MNK,
|
|
substring(description FROM 'WHM\\s+Lv\\.\\s*(\\d+)')::int AS WHM,
|
|
substring(description FROM 'BLM\\s+Lv\\.\\s*(\\d+)')::int AS BLM,
|
|
substring(description FROM 'RDM\\s+Lv\\.\\s*(\\d+)')::int AS RDM,
|
|
substring(description FROM 'THF\\s+Lv\\.\\s*(\\d+)')::int AS THF,
|
|
substring(description FROM 'PLD\\s+Lv\\.\\s*(\\d+)')::int AS PLD,
|
|
substring(description FROM 'DRK\\s+Lv\\.\\s*(\\d+)')::int AS DRK,
|
|
substring(description FROM 'BST\\s+Lv\\.\\s*(\\d+)')::int AS BST,
|
|
substring(description FROM 'BRD\\s+Lv\\.\\s*(\\d+)')::int AS BRD,
|
|
substring(description FROM 'RNG\\s+Lv\\.\\s*(\\d+)')::int AS RNG,
|
|
substring(description FROM 'SAM\\s+Lv\\.\\s*(\\d+)')::int AS SAM,
|
|
substring(description FROM 'NIN\\s+Lv\\.\\s*(\\d+)')::int AS NIN,
|
|
substring(description FROM 'DRG\\s+Lv\\.\\s*(\\d+)')::int AS DRG,
|
|
substring(description FROM 'SMN\\s+Lv\\.\\s*(\\d+)')::int AS SMN,
|
|
substring(description FROM 'BLU\\s+Lv\\.\\s*(\\d+)')::int AS BLU,
|
|
substring(description FROM 'COR\\s+Lv\\.\\s*(\\d+)')::int AS COR,
|
|
substring(description FROM 'PUP\\s+Lv\\.\\s*(\\d+)')::int AS PUP,
|
|
substring(description FROM 'DNC\\s+Lv\\.\\s*(\\d+)')::int AS DNC,
|
|
substring(description FROM 'SCH\\s+Lv\\.\\s*(\\d+)')::int AS SCH,
|
|
substring(description FROM 'GEO\\s+Lv\\.\\s*(\\d+)')::int AS GEO,
|
|
substring(description FROM 'RUN\\s+Lv\\.\\s*(\\d+)')::int AS RUN
|
|
FROM usable_items
|
|
WHERE type_description = 'SCROLL'
|
|
ON CONFLICT (name) DO UPDATE SET
|
|
WAR = EXCLUDED.WAR,
|
|
MNK = EXCLUDED.MNK,
|
|
WHM = EXCLUDED.WHM,
|
|
BLM = EXCLUDED.BLM,
|
|
RDM = EXCLUDED.RDM,
|
|
THF = EXCLUDED.THF,
|
|
PLD = EXCLUDED.PLD,
|
|
DRK = EXCLUDED.DRK,
|
|
BST = EXCLUDED.BST,
|
|
BRD = EXCLUDED.BRD,
|
|
RNG = EXCLUDED.RNG,
|
|
SAM = EXCLUDED.SAM,
|
|
NIN = EXCLUDED.NIN,
|
|
DRG = EXCLUDED.DRG,
|
|
SMN = EXCLUDED.SMN,
|
|
BLU = EXCLUDED.BLU,
|
|
COR = EXCLUDED.COR,
|
|
PUP = EXCLUDED.PUP,
|
|
DNC = EXCLUDED.DNC,
|
|
SCH = EXCLUDED.SCH,
|
|
GEO = EXCLUDED.GEO,
|
|
RUN = EXCLUDED.RUN; |