add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE mytable (
mycolumn VARCHAR(100)
);
INSERT INTO mytable (mycolumn) VALUES
('Brisbane.Wastewater.Fortitude.Valley.Pump.Station.ABC123'),
('Townsville.Water.Northern.Paluma.Reservoir.DEF456'),
('Cairns.Wastewater.Suburb.Asset.XYZ789');
Records: 3  Duplicates: 0  Warnings: 0
SELECT
SUBSTRING_INDEX(mycolumn, '.', 1) AS City,
SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 2), '.', -1) AS Department,
CONCAT(SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 3), '.', -1), ', ', SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 4), '.', -1)) AS Site,
SUBSTRING_INDEX(mycolumn, '.', -1) AS Outstation
FROM mytable;
City Department Site Outstation
Brisbane Wastewater Fortitude, Valley ABC123
Townsville Water Northern, Paluma DEF456
Cairns Wastewater Suburb, Asset XYZ789
SELECT
SUBSTRING_INDEX(mycolumn, '.', 1) as City,
SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', -4), '.', 1) as Department,
REPLACE(SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', -3), '.', 1), ',', ', ') as Site,
SUBSTRING_INDEX(mycolumn, '.', -1) as Outstation
FROM mytable;
City Department Site Outstation
Brisbane Valley Pump ABC123
Townsville Northern Paluma DEF456
Cairns Wastewater Suburb XYZ789
SELECT
SUBSTRING_INDEX(mycolumn, '.', 1) AS City,
SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 2), '.', -1) AS Department,
TRIM(BOTH '.' FROM SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 4), '.', -1)) AS Site,
SUBSTRING_INDEX(mycolumn, '.', -1) AS Outstation
FROM mytable;

City Department Site Outstation
Brisbane Wastewater Valley ABC123
Townsville Water Paluma DEF456
Cairns Wastewater Asset XYZ789
SELECT
SUBSTRING_INDEX(mycolumn, '.', 1) AS City,
SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 2), '.', -1) AS Department,
REPLACE(SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', -3), '.', 1), CONCAT('.', SUBSTRING_INDEX(mycolumn, '.', -1)), '') AS Site,
SUBSTRING_INDEX(mycolumn, '.', -1) AS Outstation
FROM mytable;

City Department Site Outstation
Brisbane Wastewater Pump ABC123
Townsville Water Paluma DEF456
Cairns Wastewater Suburb XYZ789
SELECT
SUBSTRING_INDEX(mycolumn, '.', 1) AS City,
SUBSTRING_INDEX(SUBSTRING_INDEX(mycolumn, '.', 2), '.', -1) AS Department,
REPLACE(
SUBSTRING_INDEX(
SUBSTRING_INDEX(mycolumn, '.', LENGTH(mycolumn) - LENGTH(REPLACE(mycolumn, '.', '')) + 1),
'.',
LENGTH(SUBSTRING_INDEX(mycolumn, '.', LENGTH(mycolumn) - LENGTH(REPLACE(mycolumn, '.', '')) + 1)) - LENGTH(REPLACE(SUBSTRING_INDEX(mycolumn, '.', LENGTH(mycolumn) - LENGTH(REPLACE(mycolumn, '.', '')) + 1), '.', ''))
),
'.',
', '
) AS Site,
SUBSTRING_INDEX(mycolumn, '.', -1) AS Outstation
FROM mytable;

City Department Site Outstation
Brisbane Wastewater Brisbane, Wastewater, Fortitude, Valley, Pump, Station ABC123
Townsville Water Townsville, Water, Northern, Paluma, Reservoir DEF456
Cairns Wastewater Cairns, Wastewater, Suburb, Asset XYZ789