|
|
|
Выбор уникальных значений при определенных условиях
|
|||
|---|---|---|---|
|
#18+
Всем привет. Есть таблица: id state 1 3 1 5 2 2 2 1 2 4 3 1 3 4 3 5 Мне нужно получит на выходе таблицу в уникальными значениями по полю id и если в какой-то момент попадается state=4, то должен выводиться именно он, если значения state=4 для текущего id нет, то выводить любое поле с данным id Т.е. результат должен быть такой: id state 1 3 2 4 3 4 Помогите пожалуйста, уже голову сломал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2013, 01:14:27 |
|
||
|
Выбор уникальных значений при определенных условиях
|
|||
|---|---|---|---|
|
#18+
Dr.Amid, а если бы задача стояла не =4, а равно минимальному значению стейт среди записей с тем же айди- решил бы??? вроде как в шапке прилеплено. так вот абсолютное_значение(стейт-4) будет минимальным именно для четырёх :) а вообще по аналогии выбрать дистинк айди1 стейт1 из таблица1 джоин левый (таблица2 где стейт =4) по (где айди1 = айди2) где стейт1=4 ИЛИ стейт1 НЕ =4 и стейт2 ТОЧНО НУЛЛ то что после или, это те строчки для которых не нашлось соответсвия - тоесть те айди, для которых стейт 4 не существует. то что до или, оставит айдишники для которых стейт 4 существует. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.11.2013, 04:32:05 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=198&tid=1835632]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
29ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 294ms |

| 0 / 0 |
