SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 03.02.2009 14:45:08

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Работа с варчаром

Всем привет, у меня вопрос на простую тему, но не могу сообразить, как это просто сделать smile

mysql> create table logins (login varchar(10));
Query OK, 0 rows affected (0.02 sec)

mysql> insert into logins values ('a');
Query OK, 1 row affected (0.03 sec)

mysql> select * from logins where login = 'a     ';
+-------+
| login |
+-------+
| a     |
+-------+
1 row in set (0.00 sec)


Проблема в том, что константа трактуется как char. Вопрос в том, как не прибегая к placeholders сделать так,
чтобы она трактовалась как varchar.

Неактивен

 

#2 03.02.2009 14:58:53

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Работа с варчаром

Придумалось только такое:

SELECT * FROM logins WHERE CONCAT(login,'x') = 'a     x';

Неактивен

 

#3 03.02.2009 15:13:25

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Работа с варчаром

Напоминает проверку значений переменных в bash wink

Неактивен

 

#4 03.02.2009 16:42:08

Magz
Гуру
Откуда: Москва
Зарегистрирован: 18.09.2007
Сообщений: 112

Re: Работа с варчаром

А если

Код:

SELECT * FROM logins WHERE login LIKE 'a     ';

Неактивен

 

#5 03.02.2009 16:47:14

Magz
Гуру
Откуда: Москва
Зарегистрирован: 18.09.2007
Сообщений: 112

Re: Работа с варчаром

Да, все правильно, второй пример на http://dev.mysql.com/doc/refman/5.1/en/ … tions.html

Неактивен

 

#6 03.02.2009 17:30:14

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Работа с варчаром

LIKE не подходит - иначе мы будем матчиться в обратную сторону ("user" будет матчиться на "LIKE 'u'").
Нужно именно строгое соответствие строк.

UPD: ай, я дурак, это ж не регексп, действительно работает. Спасибо! smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson