|
MySQL, Boolean и Union
|
|||
---|---|---|---|
#18+
Всем доброго времени суток. Наткнулся давеча на интересную ситуацию. У меня есть несколько таблиц почти одинаковой структуры. В каждой из них есть одно и то же поле типа Boolean. Соответственно, у себя в Дельфях я обрабатываю это поле как AsBoolean и до недавнего времени проблем не испытывал. До тех пор, пока мне не понадобилось написать представление, где идет выборка однотипных полей из трех таблиц, соединенных Union. Как только я попытался обработать это представление в Дельфях, мне тут же вылезла ошибка, что Дельфи не могут обработать это поле как Boolean. Пришлось работать с ним как AsInteger, сравнивая с 0 или 1. Эксперименты показали, что если во вьюхе закомментировать две любых таблицы и оставить выборку только из одной, проблема пропадает. Отсюда вопрос - за неимением в MySQL конструкции Cast [поле] As Boolean можно ли как-то скорректировать эту выборку? Я, конечно, могу выкрутиться, но в нескольких местах программы мне было бы очень удобно использовать это поле как булевское. Есть какие-нибудь идеи? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 07:12 |
|
MySQL, Boolean и Union
|
|||
---|---|---|---|
#18+
S_Gurза неимением в MySQL конструкции Cast [поле] As BooleanВот глупость сказать - это мы запросто, а в документацию посмотреть не можем... Cast Functions and Operators ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 07:54 |
|
MySQL, Boolean и Union
|
|||
---|---|---|---|
#18+
Для справки: BOOLEAN - это синоним INT(1). ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 07:55 |
|
MySQL, Boolean и Union
|
|||
---|---|---|---|
#18+
AkinaДля справки: BOOLEAN - это синоним INT(1). Для справки - во-первых, TinyInt(1) (не знаю, приниципиально это или нет). Во-вторых, ни в одной из функций приведения (во всяком случае, по вашей ссылке), нет возможности привести поле к этому типу. Только Signed или Unsigned, размерность указать нельзя. Мне это никак не помогает - Unsigned Int мой запрос возвращает и без этих конвертаций. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.09.2019, 08:40 |
|
|
start [/forum/topic.php?fid=47&msg=39865375&tid=1828958]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 160ms |
0 / 0 |