![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 wash456123 ![]()
![]() |
下的語法是 SELECT * FROM 資料表 WHERE 欄位 LIKE '[特定字母如:ABCD]%' 但是這樣下卻找不到資料 查了一下好像是不能用[] 那請問要怎樣才能做到像[]的功能一樣 |
1樓 |
如果你的字串包含 [ 跟 ]
請這樣子
本篇文章回覆於2017-06-22 19:15
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
wash456123 ![]() |
回一樓
還是沒辦法抓到資料
本篇文章回覆於2017-06-22 21:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
你的是MySql嗎?我的MySql可以耶,
還是其實你的開頭不是[abcd] ? 前面再加%看看... 看你要不要貼幾筆資料上來看一下?
本篇文章回覆於2017-06-22 21:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
wash456123 ![]() |
我是在phpmyadmin裡面的SQL那邊下語法的
我的資料是 apple bed cat dog 用LIKE 'a%'或是用'b%'這些只有%的語法可以找到資料 但是用[]就不行
本篇文章回覆於2017-06-22 21:32
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
如果你的資料是這樣,當然不能用[]啊,
我不知道你去哪裡看來的? 你想要做什麼樣的搜尋?
本篇文章回覆於2017-06-22 21:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
wash456123 ![]() |
我看到的是說'[abcd]e' 是表示ae,be,ce,de這樣的意思
我想做的搜尋是輸入一個字串如abc 然後要找到開頭是a以及開頭是b和開頭是c的資料
本篇文章回覆於2017-06-22 22:04
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
我有找到一篇
SQL模糊搜尋 不過看到[name]就知道這是MS-SQL的語法, 不是MySql的語法, 每種資料庫的語法都不大一樣, MySql目前還是只有看到 % 跟 _, 不過你要找abcd應該是可以用Regex語法找吧。
本篇文章回覆於2017-06-22 22:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
最有價值解答
小魚 ![]() |
找到一種方式了,
真的每個地方的Regex用法都有點不大一樣,
本篇文章回覆於2017-06-22 23:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓
作者回應
wash456123 ![]() |
感謝大大
查了一下Regex的用法後終於解決了 WHERE 欄位 REGEXP '^[abcd]' 這樣就可以找到資料了
本篇文章回覆於2017-06-22 23:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓 |
恩恩,這樣子也是可以,總之比較特別的字串需要用到Regex,
Regex裡面也很多學問, 需要經驗的累積。
本篇文章回覆於2017-06-23 00:00
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |