Public feed #889352

Vermischtes

public text v1 · immutable
Raw Edit
·published 2008-02-02 21:21 UTC
rendered paste body
SET @FieldNumber = 34;
SET @GUID = 5410;
SET @NEWVALUE = 69;
SELECT CONCAT_WS(' ',
(SELECT SUBSTRING_INDEX(`data`, ' ', (SELECT @FieldNumber)) FROM `character` WHERE guid = (SELECT @GUID)),
NULL,
(SELECT @NEWVALUE),
NULL,
(SELECT SUBSTRING_INDEX( `data` , (SELECT SUBSTRING_INDEX( `data` , ' ', (SELECT @FieldNumber) + 1) FROM `character` WHERE guid = (SELECT @GUID)) , -1) FROM `character` WHERE guid = (SELECT @GUID))
)

to do:
1. alles sorgfältig überprüfen (!)

dann, ausführen:

UPDATE 
   `characters`.`character`
SET
   `data` = 
   (
      SELECT CONCAT_WS(' ',
         (SELECT 
            SUBSTRING_INDEX(`data`, ' ', (SELECT @INDEX))
         FROM
            `character`
         WHERE
            guid = (SELECT @GUID)),
         NULL,
         (SELECT @NEWVALUE),
         NULL,
         (SELECT 
            SUBSTRING_INDEX( `data`, (SELECT SUBSTRING_INDEX( `data` , ' ', (SELECT @INDEX) + 1) FROM `character` WHERE guid = (SELECT @GUID)), -1)
         FROM
            `character`
         WHERE
            guid = (SELECT @GUID))
      )
   )
WHERE
   `character`.`guid` = (SELECT @GUID)
LIMIT 
   1;