Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / [mysql] вопрос по enum ('0','1') / 9 сообщений из 9, страница 1 из 1
02.07.2014, 16:48:29
    #38685997
YuriyB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
добрый день!

есть таблица с enum ('0','1')

Код: plsql
1.
  `active` enum('0','1') NOT NULL DEFAULT '1',



выдает нормально на

Код: plsql
1.
2.
select * from table where active="1"; 
select * from table where active="0"; 



но вот на

select * from table where active=1;

попадают тоже несколько строк
хотя значения они имееют active=0


1. как такое может быть ?
2. что бы неправильно сделано ?как исправить ?
...
Рейтинг: 0 / 0
02.07.2014, 16:58:26
    #38686009
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
Ну так не надо использовать неявное преобразование типов данных без чтения соответствующей документации.
http://dev.mysql.com/doc/refman/5.5/en/enum.html The elements listed in the column specification are assigned index numbers, beginning with 1.
...
If you retrieve an ENUM value in a numeric context, the column value's index is returned.
...
Рейтинг: 0 / 0
02.07.2014, 16:59:12
    #38686010
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
'1' - строка
1 - число
м.б. в этом проблема
...
Рейтинг: 0 / 0
02.07.2014, 17:25:01
    #38686041
YuriyB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
vkle'1' - строка
1 - число
м.б. в этом проблема

это понятно но

но вот на

select * from table where active= 1 ;

попадают тоже несколько строк хотя значения они имееют active= 0

и кроме того строк с active= 0 больше чем выдает select * from table where active= 1 ;
...
Рейтинг: 0 / 0
02.07.2014, 17:39:53
    #38686053
YuriyB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
как могло сохраниться число в таблице если enum('0','1')
допустимы только '0','1'
и почему по запросу select * from table where active=1;
вместо ожидаемого пустого ответа
выдаются несколько строк с active=0
...
Рейтинг: 0 / 0
02.07.2014, 17:46:54
    #38686062
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
YuriyBи почему по запросу select * from table where active=1;
вместо ожидаемого пустого ответа
выдаются несколько строк с active=0Вы мою цитату выше принципиально читать не хотите? Или нужно перевести?
...
Рейтинг: 0 / 0
02.07.2014, 17:56:51
    #38686071
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
YuriyBи почему по запросу select * from table where active=1;
вместо ожидаемого пустого ответа
выдаются несколько строк с active=0По идее, должны выдаваться _все_ строки, где установлено значение '0'.
...
Рейтинг: 0 / 0
02.07.2014, 21:13:21
    #38686217
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
Специально для "пейсателя" - сиди и вдумчиво изучай, что даёт

Код: sql
1.
2.
select `active`, cast(`active` as unsigned) 
from table;
...
Рейтинг: 0 / 0
03.07.2014, 15:26:43
    #38686934
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[mysql] вопрос по enum ('0','1')
YuriyBvkle'1' - строка
1 - число
м.б. в этом проблема

это понятно но

но вот на

select * from table where active= 1 ;

попадают тоже несколько строк хотя значения они имееют active= 0

и кроме того строк с active= 0 больше чем выдает select * from table where active= 1 ;

не может быть.

проверил спецом у себя(5.5 версия)
выдаёт все строки, где значение первое из перечисленного.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / [mysql] вопрос по enum ('0','1') / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]