Так что я пытался работать с плохо оптимизированной/созданной базой данных. Я знаю, что вы можете использовать декодирование внутри предложения where, но мне было интересно, можно ли использовать значение в предложении where после декодирования в выборе. В принципе, у меня есть случай Сорта, как этотOracle: DECODE и WHERE Раздел
DECODE(theRow, 'P', 1,'D',2,'T',3, ... (goes on a bit)) AS theRowDecoded
И я хочу, чтобы выбрать значения между тем, что можно было бы отправить в этой строке (так сказать, между 5 и 8). Не уверен, почему они не просто использовали номера для этого столбца в базе данных (это станет более понятным и понятным программным способом), но, должно быть, нужно работать с тем, что у меня есть.
Итак, есть ли способ использовать theRowDecoded в том, где или есть лучший способ сделать диапазон? Я знаю, что DECODE является только равным, но надеется, что есть хороший способ сделать диапазон с декодированием.
Спасибо :) очень информативный и работает для меня. Я настрою виртуальный столбец позже.Gotta настроить его в базе данных нашей группы (поскольку официальное средство по-прежнему использует 10g, но это нормально, потому что мы как бы берем то, что хотим, и реструктурируем его в нашей 12c-базе данных). –