Не зная цели, которую вы пытаетесь выполнить, мой первый совет будет соответствовать другим ответам. Добавьте строки, которые впоследствии можно отсортировать, используя Order By. Однако, если вы действительно хотите вставить строку в определенную позицию в существующем запросе, это должно сделать это за вас. Обратите внимание, что вам нужно определить столбцы в QueryNew(), поэтому я предоставил пример.
<cfquery datasource="cse" name="abc">
select student, teacher from grade
</cfquery>
<cfset abc_new = QueryNew("student,teacher","varchar,varchar")>
<cfloop query="abc">
<!--- ADD NEW DATA TO QUERY AT ROW 2 --->
<cfif CURRENTROW eq 2>
<cfset QueryAddRow(abc_new) />
<cfset QuerySetCell(abc_new,"STUDENT","Tommy Oliver") />
<cfset QuerySetCell(abc_new,"TEACHER","Ms. Appleby") />
</cfif>
<!--- COPY ORIGINAL DATA TO QUERY, ROW NUMBERS NOT PRESERVED --->
<cfset QueryAddRow(abc_new) />
<cfset QuerySetCell(abc_new,"STUDENT",abc.STUDENT) />
<cfset QuerySetCell(abc_new,"TEACHER",abc.TEACHER) />
</cfloop>
<cfdump var="#abc_new#">
Можете ли вы дать нам представление о том, что вы пробовали? Одна вещь, которую можно попробовать, может заключаться в добавлении строки в конец, а затем QoQ для обновления порядка сортировки. Любопытно, что используется для добавления строки в середине запроса? –
Нет ничего изначально. Предположим, что у вас есть запрос с 4 строками, и вы хотите вставить новую третью строку, перемещая строки 3,4 в позицию 4,5. Вам нужно будет захватить первые 2 строки, добавить 1 новую строку, а затем добавить обратно в последние 2 строки.Бит из Faff – duncan
' \t выберите * из класса \t \t \t \t \t \t \t ' –