Ошибка сортировки в отчетах
Добавлено: 24 янв 2025, 10:42
Создал общий отчет (из дополнений). При сортировке данных отчета по одному из полей возникает ошибка:
Database Error: 1052 - Column 'field_244' in order clause is ambiguous
Query: select e.* , (CASE WHEN e.field_262='74' THEN e.field_236-60*86400 WHEN e.field_262='75' THEN e.field_236-90*86400 WHEN e.field_262='76' THEN e.field_236-30*86400 WHEN e.field_262='77' THEN e.field_236-60*86400 END) as field_238, (CASE WHEN e.field_262='74' THEN 'не требуется' WHEN e.field_262='75' THEN e.field_236-60*86400 WHEN e.field_262='76' THEN 'не требуется' WHEN e.field_262='77' THEN 'не требуется' END) as field_240, (CASE WHEN e.field_262='74' THEN e.field_236-30*86400 WHEN e.field_262='75' THEN e.field_236-45*86400 WHEN e.field_262='76' THEN 'не требуется' WHEN e.field_262='77' THEN 'не требуется' END) as field_242, (e.field_236) as field_244, (if(e.field_230>0,e.field_230+5*86400,NULL)) as field_246 from app_entity_26 e where e.id>0 order by (field_244) asc limit 0, 50
Page: /index.php?module=items/listing
#0 includes\functions\database.php(99): mysqli_query()
#1 modules\items\actions\listing.php(215): db_query()
#2 index.php(31): require('C:\\OSPanel\\doma...')
#3 {main}
Видимо, происходит пересечение наименований полей таблицы и вновь создаваемых полей для запроса. Есть ли где-то ограничение на номер field_X для устранения этой ошибки?
Database Error: 1052 - Column 'field_244' in order clause is ambiguous
Query: select e.* , (CASE WHEN e.field_262='74' THEN e.field_236-60*86400 WHEN e.field_262='75' THEN e.field_236-90*86400 WHEN e.field_262='76' THEN e.field_236-30*86400 WHEN e.field_262='77' THEN e.field_236-60*86400 END) as field_238, (CASE WHEN e.field_262='74' THEN 'не требуется' WHEN e.field_262='75' THEN e.field_236-60*86400 WHEN e.field_262='76' THEN 'не требуется' WHEN e.field_262='77' THEN 'не требуется' END) as field_240, (CASE WHEN e.field_262='74' THEN e.field_236-30*86400 WHEN e.field_262='75' THEN e.field_236-45*86400 WHEN e.field_262='76' THEN 'не требуется' WHEN e.field_262='77' THEN 'не требуется' END) as field_242, (e.field_236) as field_244, (if(e.field_230>0,e.field_230+5*86400,NULL)) as field_246 from app_entity_26 e where e.id>0 order by (field_244) asc limit 0, 50
Page: /index.php?module=items/listing
#0 includes\functions\database.php(99): mysqli_query()
#1 modules\items\actions\listing.php(215): db_query()
#2 index.php(31): require('C:\\OSPanel\\doma...')
#3 {main}
Видимо, происходит пересечение наименований полей таблицы и вновь создаваемых полей для запроса. Есть ли где-то ограничение на номер field_X для устранения этой ошибки?