Maybe not the answer you're looking for, but your table doesn't even conform to the first normal form.
Normalize it, for example like this:
CREATE TABLE MyTable
([fileid] int, [filesequence] int, [catid] int, [catsequence] int)
;
INSERT INTO MyTable
([fileid], [filesequence], [catid], [catsequence])
VALUES
(4, 1, 41, 2),
(1, 2, 41, 2),
(5, 3, 41, 2),
(8, 4, 41, 2),
(9, 5, 41, 2),
(10, 6, 41, 2),
(20, 7, 41, 2),
(18, 1, 48, 9),
(17, 2, 48, 9),
(19, 3, 48, 9),
(24, 4, 48, 9),
(25, 5, 48, 9),
(19, 1, 49, 10),
(21, 2, 49, 10),
(22, 3, 49, 10),
(23, 4, 49, 10),
(24, 5, 49, 10),
(25, 6, 49, 10),
(26, 7, 49, 10)
; Now you can Query it like this:
select fileid
from mytable
group by fileid
order by min(catsequence),min(filesequence)
And the result will look like this:
FILEID
4
1
5
8
9
10
20
18
19
17
24
25
21
22
23
26 It's easy enough to make that into a comma separated file if you would really need to.
But that task actually belongs to another layer than the database.
|