我想從一個表中使用數字範圍選擇數據。總之,我想選擇的路徑,其中有6到9的範圍內的數字sql選擇使用之間,並像
$sql = "select * from users where path_name like between '%6%' and '%9%' ";
但是沒有什麼被返回。
任何人都有更好的方法來做到這一點?
我想從一個表中使用數字範圍選擇數據。總之,我想選擇的路徑,其中有6到9的範圍內的數字sql選擇使用之間,並像
$sql = "select * from users where path_name like between '%6%' and '%9%' ";
但是沒有什麼被返回。
任何人都有更好的方法來做到這一點?
這就是我一直在尋找的球員
$sql1 = "select * from users where path_name REGEXP '[6-9]'";
參考 Regular expressions
太好了,現在你可以把這個標記爲答案:) – Eric
如果你想6
和9
之間返回所有號碼您不需要like
:
$sql = "select * from users where path_name between 6 and 9";
路徑名具有諸如download5,download6,download7,download8,download9,download10等值。我想根據數字6到8選擇路徑名。這就是爲什麼我想使用'like'。 –
由於path_name是你應該使用條件語句數。考慮使用where path_name >= 6 and path_name <= 9
或更簡單的5和10與尖銳的條件。
SELECT * FROM USERS
WHERE SUBSTR(PATH_NAME, 4, len(PATH_NAME)-4) BETWEEN 6 and 9
我想你的路徑名值都喜歡
記住值6到9是虛擬的..我實時我會用動態變量替換它們 –
http://forgetcode.com/Teradata/1619-SUBSTR想知道更多關於SUBSTR()的信息 –
如果是SQL Server中,Like
可以通過一系列的比賽中使用「axr6b」
declare @users table (path_name varchar(10))
insert @users values
('download1'), ('download3'), ('download5'), ('download6'),
('download7'), ('download9'), ('download10')
select * from @users where path_name like '%[6-9]%'
假設它是MySQL的使用[REGEXP(http://dev.mysql.com/doc/refman/5.7/en/regexp.html) – cha
提供什麼你實際上是試圖實現更詳細。之間將不會運行你想要的字符串值。 –
您正在使用哪些DBMS?並請[編輯]你的問題,並添加表格定義爲'create table'語句,[請不要截圖](http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-當問的問題/ 285557#285557) –