I have a query that returns all records that contain the word "PACK" in more than one Dept... field (at most, the word "PACK" occurs twice in a record, and all by itself within the field):
SELECT *
FROM
(
SELECT s.*,
IIf(s.DeptOne = "Pack", 1, 0) AS D1,
IIf(s.DeptTwo = "Pack", 1, 0) AS D2,
IIf(s.DeptThree = "Pack", 1, 0) AS D3,
IIf(s.DeptFour = "Pack", 1, 0) AS D4,
IIf(s.DeptFive = "Pack", 1, 0) AS D5,
IIf(s.DeptSix = "Pack", 1, 0) AS D6,
IIf(s.DeptSeven = "Pack", 1, 0) AS D7,
IIf(s.DeptEight = "Pack", 1, 0) AS D8,
IIf(s.DeptNine = "Pack", 1, 0) AS D9,
IIf(s.DeptTen = "Pack", 1, 0) AS D10,
IIf(s.DeptEleven = "Pack", 1, 0) AS D11,
IIf(s.DeptTwelve = "Pack", 1, 0) AS D12,
IIf(s.DeptThirteen = "Pack", 1, 0) AS D13,
IIf(s.DeptFourteen = "Pack", 1, 0) AS D14,
IIf(s.DeptFifteen = "Pack", 1, 0) AS D15,
IIf(s.DeptSixteen = "Pack", 1, 0) AS D16,
IIf(s.DeptSeventeen = "Pack", 1, 0) AS D17,
IIf(s.DeptEightteen = "Pack", 1, 0) AS D18,
IIf(s.DeptNineteen = "Pack", 1, 0) AS D19,
IIf(s.DeptTwenty = "Pack", 1, 0) AS D20
FROM MyTable s
) m
WHERE (m.D1 + m.D2 + m.D3 + m.D4 + m.D5 + m.D6 + m.D7 + m.D8 +
m.D9 + m.D10 + m.D11 + m.D12 + m.D13 + m.D14 + m.D15 +
m.D16 + m.D17 + m.D18 + m.D19 + m.D20) > 1
The query works great, and returns all records that have "PACK" in multiple Dept... fields. Now I need to change the first instance of "PACK" in those records to "PACK-M" and the second instance of "PACK" in those records to "PACK-S"
To view a picture of two records returned in the query go here: http://www.allgoodit.com/stackoverflow/result.jpg
Both records have the word "PACK" appear twice in different fields. I wish to have re-write the first instance within each record to "PACK-M" and the second to "PACK-S". No VBA, just SQL.