|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
Всем привет, возможно глупость буду спрашивать... Есть таблица моделей IDNAME_MODELCODE_MODELUNIT_MODELBARCODE_MODELи еще несколько полей В 95 случаев модели выбираються в виде Код: sql 1.
Захотели хотелку чтобы можно было менять порядок полей при выборе моделей, и это было настройкой. Например: Код: sql 1.
или Код: sql 1.
или Код: sql 1.
Вопрос как можно сделать это легантно не плодив кучу if оф. Например через таблицу настроек или как то еще. Как такой вопрос решают по правильному? Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 23:47 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
Sashaua не плодив кучу if оф. На клиенте, через настройку, используемую в ифах. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2020, 00:12 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
YuRock, в исходном сообщении почему-то все вытаскивается в один столбец, конкатенацией. И я х.з., как потом приложение будет разбирать, в каком порядке какие стольбцы идут. Поэтому да, - конкатенацию отменить - крутить порядок столбцов в гриде на клиенте. И там же сохранять. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2020, 00:19 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
kdv, В базе это два разных поля NAME_MODEL и CODE_MODEL На клиенте это действительно в один столбец конкатенацией (так было в ТЗ) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2020, 00:31 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
SashauaНа клиенте это действительно в один столбец конкатенацией (так было в ТЗ) Так ты определись: конкатенация у тебя на сервере или на клиенте. В первом сообщении она таки на сервере. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2020, 00:44 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
Если варианты склейки жестко привязаны к конкретным записям MODELS то можно подумать над таким вариантом: - в MODELS добавить поле FULL_NAME - заполнять триггером на основании типа записи (если таковые возможно выделить, конечно) Ну и соответственно, выбираешь всегда FULL_NAME но для разных MODELS оно может быть собрано по разному. Минусы - избыточность данных на сервере - следить за обновлением FULL_NAME если именились составляющие его части Плюсы - не нужно морочиться с запросом, он всегда одинаковый - если нужно поискать в FULL_NAME - то пожалуйста, не нужно выяснять что и как склеено - FULL_NAME может быть проиндексировано (если не слишком большое), что может ускорить какие-то запросы (но, естественно, может и замедлить) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2020, 03:42 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
Возможных вариантов - вагон. :) Ежели порядок склейки зависит от данных - можно изобразить сложный запрос, который это учтёт или предгенерить склеенное значение - см ответ 22154859 от fraks. Ежели клиенты хотят видеть какие-то фиксированные варианты - можно на клиенте или сделать или по запросу на вариант или генерить поля со склейкой и в запрос вписывать. Так же можно в запросе вернуть все исходные поля, а на клиенте склеивать указанные отдельным местом перед показом. Как оно будет проще/изящнее в программе - зависит от остального дизайна системы, ну и выбора разработчика. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2020, 13:39 |
|
Порядок полей при выборке
|
|||
---|---|---|---|
#18+
Tonal Возможных вариантов - вагон. :) select g.*, m.* from MODELS m LEFT JOIN GET_MADEL_NAME(m.id,0,1,1,1,0,0,null, ...) g on 1=1 ... |
|||
:
Нравится:
Не нравится:
|
|||
24.06.2020, 13:42 |
|
|
start [/forum/topic.php?fid=40&msg=39971598&tid=1560317]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
331ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 439ms |
0 / 0 |