How do I write a set based query? I have a groupSets table with fields
setId, idField, datasource, nameField, prefix, active
Data:
1,someIDfield, someTable, someField, pre1, 1
2,someotherIDfi eld, someTable, someotherField, pre2, 1
3,somethirdIDfi eld, someTable, somethirdField, pre3, 1
4,somefourthIDf ield, someotherTable, somefourthField , pre4, 1
I need to generate records in another table by constructing queries from the
data in groups sets. I need to insert a record for each distinct result of
the query.
Example:
SELECT DISTINCT someIDfield FROM someTable WHERE someIDfield IS NOT NULL
then I need to do an insert for each result of the above query
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result1)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result2)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result3)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result4)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, resultN)
--next reord from groupSets
SELECT DISTINCT someotherIDfiel d FROM someTable WHERE someotherIDfiel d IS
NOT NULL
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result1)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result2)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result3)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result4)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, resultN)
I basically want to do the same operation on each record in the groupSets
table. How can I accomplish this without a cursor? Any ideas?
Thanks for your help,
~ck
setId, idField, datasource, nameField, prefix, active
Data:
1,someIDfield, someTable, someField, pre1, 1
2,someotherIDfi eld, someTable, someotherField, pre2, 1
3,somethirdIDfi eld, someTable, somethirdField, pre3, 1
4,somefourthIDf ield, someotherTable, somefourthField , pre4, 1
I need to generate records in another table by constructing queries from the
data in groups sets. I need to insert a record for each distinct result of
the query.
Example:
SELECT DISTINCT someIDfield FROM someTable WHERE someIDfield IS NOT NULL
then I need to do an insert for each result of the above query
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result1)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result2)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result3)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, result4)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (1, prefix + nameField, 1, resultN)
--next reord from groupSets
SELECT DISTINCT someotherIDfiel d FROM someTable WHERE someotherIDfiel d IS
NOT NULL
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result1)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result2)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result3)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, result4)
INSERT INTO groups(setId, groupName, active, groupingEntityI D)
VALUES (2, prefix + nameField, 1, resultN)
I basically want to do the same operation on each record in the groupSets
table. How can I accomplish this without a cursor? Any ideas?
Thanks for your help,
~ck
Comment