當前位置:首頁 » 編程語言 » thinkphpsqllike查詢
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

thinkphpsqllike查詢

發布時間: 2022-10-31 23:48:23

① thinkphp sql 條件like怎麼寫

$info = $obj->where("name like '%{$name}%' ")->select();

② 用thinkPHP框架怎麼實現該sql語句

親,這個不需要轉換,直接使用就行了,TP裡面提供了一個query方法的,直接吧sql傳遞進去

③ thinkphp like 語句的問題

你這個屬於多個條件,你可以這樣寫:

④ SQL LIKE模糊查詢

--下面這個應該是可以的!
create
proc
procget
--[存儲過程名]
@proc1
varchar(50),--這個是一定要存在的參數
@proc2
varchar(50),
@proc3
varchar(50)
as
--定義一個要執行的字元串語句
declare
@aa
varchar(200)
set
@aa
=
'select
*
from
TA
where
'
+
'[表中的列名]
like
'
+
'''%'
+
@proc1
+
'%'''
--組合要執行的語句
--如果參數為空,就加上字元空串,否則就加上相應的條件語句
set
@aa
=
@aa
+
case
when
@proc2
is
null
then
''
else
'
and
[表中列名]
like'+'''%'+@proc2+
'%'''
end
set
@aa
=
@aa
+
case
when
@proc3
is
null
then
''
else
'
and
[表中列名]
like'+'''%'+@proc3+
'%'''
end
--執行語句
exec(@aa)

⑤ thinkphp 資料庫查詢怎麼查

thinkphp如何查詢資料庫?

資料庫查詢

ThinkPHP內置了非常靈活的查詢方法,可以快速的進行數據查詢操作。

查詢條件可以用於CURD等任何操作,作為where方法的參數傳入即可。

ThinkPHP可以支持直接使用字元串作為查詢條件,但是大多數情況推薦使用索引數組或者對象來作為查詢條件,因為會更加安全。

查詢方式

一、使用字元串作為查詢條件

這是最傳統的方式,但是安全性不高,例如:

1

2

$User = M("User"); // 實例化User對象

$User->where('type=1 AND status=1')->select();

最後生成的SQL語句是

1

SELECT * FROM think_user WHERE type=1 AND status=1

二、使用數組作為查詢條件

1

2

3

4

5

$User = M("User"); // 實例化User對象

$condition['name'] = 'thinkphp';

$condition['status'] = 1;

// 把查詢條件傳入查詢方法

$User->where($condition)->select();

最後生成的SQL語句是

1

SELECT * FROM think_user WHERE 'name'='thinkphp' AND status=1

如果進行多欄位查詢,那麼欄位之間的默認邏輯關系是 邏輯與 AND,但是用下面的規則可以更改默認的邏輯判斷,通過使用 _logic 定義查詢邏輯:

1

2

3

4

5

6

$User = M("User"); // 實例化User對象

$condition['name'] = 'thinkphp';

$condition['account'] = 'thinkphp';

$condition['_logic'] = 'OR'; //定義查詢邏輯

// 把查詢條件傳入查詢方法

$User->where($condition)->select();

最後生成的SQL語句是

1

SELECT * FROM think_user WHERE 'name'='thinkphp' OR `account`='thinkphp'


三、使用對象方式來查詢 (這里以stdClass內置對象為例)

1

2

3

4

5

6

$User = M("User"); // 實例化User對象

// 定義查詢條件

$condition = new stdClass();

$condition->name = 'thinkphp';

$condition->status= 1;

$User->where($condition)->select();

最後生成的SQL語句和上面一樣

1

SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1

使用對象方式查詢和使用數組查詢的效果是相同的,並且是可以互換的,大多數情況下,我們建議採用數組方式更加高效,後面我們會以數組方式為例來講解具體的查詢語言用法。

表達式查詢

上面的查詢條件僅僅是一個簡單的相等判斷,可以使用查詢表達式支持更多的SQL查詢語法,並且可以用於數組或者對象方式的查詢(下面僅以數組方式為例說明),查詢表達式的使用格式:

1

$map['欄位名'] = array('表達式','查詢條件');

表達式不分大小寫,支持的查詢表達式有下面幾種,分別表示的含義是:


1

2

3

4

$map['id'] = array('eq',100); id = 100;

$map['id'] = array('egt',100);id >= 100

$map['name'] = array('like','thinkphp%'); name like 'thinkphp%' 模糊查詢

$map['a'] =array('like',array('%thinkphp%','%tp'),'OR');$map['b'] =array('notlike',array('%thinkphp%','%tp'),'AND'); (a like '%thinkphp%' OR a like '%tp') AND (b not like '%thinkphp%' AND b not like '%tp')

本文來自ThinkPHP框架技術文章欄目:http://www.php.cn/phpkj/thinkphp/

以上就是thinkphp如何查詢資料庫的詳細內容,更多請關注php中文網其它相關文章!

⑥ SQL LIKE模糊查詢

--下面這個應該是可以的!
create proc procget --[存儲過程名]
@proc1 varchar(50),--這個是一定要存在的參數
@proc2 varchar(50),
@proc3 varchar(50)

as
--定義一個要執行的字元串語句
declare @aa varchar(200)
set @aa = 'select * from TA where ' + '[表中的列名] like ' + '''%' + @proc1 + '%'''

--組合要執行的語句
--如果參數為空,就加上字元空串,否則就加上相應的條件語句
set @aa = @aa + case when @proc2 is null then '' else ' and [表中列名] like'+'''%'+@proc2+ '%''' end
set @aa = @aa + case when @proc3 is null then '' else ' and [表中列名] like'+'''%'+@proc3+ '%''' end
--執行語句
exec(@aa)

⑦ sql查詢語句Like 的問題

LIKE 操作符用於在 WHERE 子句中搜索列中的指定模式。
SQL LIKE 操作符語法
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
通配符 描述
% 替代一個或多個字元
_ 僅替代一個字元
[charlist] 字元列中的任何單一字元
[^charlist] 或者 [!charlist] 不在字元列中的任何單一字元

這樣查詢也可以: Select * From TB1 Where cName Like '品牌_'
我不知道你怎麼會用到「*」,「*」是個查詢的字元了,可能是我不知道吧

這個網址上面的東西很基礎,你可以去看看http://www.w3school.com.cn/
希望對你有幫助

⑧ 關於sql查詢中的like用法疑問

2種,明細你SQL有問題
sql
=
"select
*
from
where
webName
like
'%中國工商銀行%'
「'
string
name
=
「中國工商銀行」;
sql
=
"select
*
from
where
webName
like
'%『"+name+"』%'
「;
你的寫法轉換成sql就是
找出webName
中的」name「這個名詞
而不是」中國工商銀行上海支行「

⑨ 趙桐正講的thinkphp中SQL模糊查詢時%{$_POST['username']}%,為什麼有{}

變數前後有字元的話,要加上 {} 來區分,不然系統會默認的將$ 後面所有的字元都當成變數的名字