2013-12-10 6 views
-2

У меня есть таблица с столбцом varchar, этот столбец содержит как числовые записи, так и альфа-числовые записи, но требует только те, у которых нет букв. Как я могу это достичь?query = "SELECT * FROM Table WHERE` VarCharCol1` = numeric "

+1

Извините, это не имеет большого смысла? Можете ли вы уточнить свой вопрос, пожалуйста. – BenM

+0

Его обычно довольно плохая практика для этого, вы должны действительно убедиться, что если вы хотите что-то в определенном формате, вы установите столбец с этим типом –

+0

возможный дубликат [Определить, является ли значение номером в MySQL] (http: // stackoverflow. com/questions/5064977/detect-if-value-is-number-in-mysql) –

ответ

3

Попробуйте это:

SELECT * FROM table WHERE `varcharcol1` RLIKE '^[0-9]+$' 
+0

Вы забыли столбец –

+0

Это должно выполнить задание после его исправления. – Rolice

+0

@ ВикторПеров oops извините, спасибо за указатель –

2

судимого

SELECT column_name FROM table WHERE ISNUMERIC(column_name) = 1 
+0

Это не работает: FUNCTION ISNUMERIC не существует –

2
select * from table where concat('', column * 1) = column; 

Возвращает массив данных, где столбец является числовым (содержит только цифру).

+0

WOW, это интересный, странный, но логичный. И это действительно работает! –

Смежные вопросы