你說的是數(shù)據(jù)庫,還是數(shù)據(jù)表啊。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比輝南網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式輝南網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋輝南地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴。
如果是數(shù)據(jù)表的話,可以用連接查詢。
select a.id,a.username,b.id as bid b.title from 表A a left join 表B b on a.id=b.id
這樣就可以了,如果是兩個(gè)數(shù)據(jù)庫,那就比較麻煩,要?jiǎng)?chuàng)建兩個(gè)連接對象。再分別打開兩個(gè)表。再操作。
你的意思是說
點(diǎn)擊查詢后
要吧與關(guān)鍵字相關(guān)聯(lián)的整條記錄都顯示出來?
那樣的話
你要先把這條記錄復(fù)制
給某個(gè)數(shù)組,然后輸出這個(gè)數(shù)組就可以了
$sql="select
*
from
db1
where
name=$_post[name]";
$result=mysql_query($sql,$con);
$row=mysql_fetch_array($result)
echo
$row[name];
echo
$row[age];
……
查看一下代碼:
?php
//?獲取表單提交值
$student_id?=?intval(trim($_POST['student_id']));
//?頁面表單??可以放單獨(dú)的html文件中,如果放單獨(dú)的html頁面中?form?的action的地址要改成下面的PHP文件名
echo?'form?action=""?method="post"
input?type="text"?name="student_id"?value="{$student_id}"/
input?type="submit"?name="submit"?value="查詢"/
/form';
//?當(dāng)有數(shù)據(jù)提交時(shí)
if?($student_id)
{
$con=?mysql_connect("localhost","root","111")?or?die("連接錯(cuò)誤");
mysql_select_db("examination",$con);
//?查詢
$sql?=?"SELECT?*?FROM?tablename?WHERE?student_id?=?$student_id?";
$res=mysql_query($sql);
$row=mysql_fetch_array($res);
//?輸出
echo?'學(xué)號:'.$row['student_id'].'br姓名:'.$row['name'].'br性別:'.$row['gender'].'br分?jǐn)?shù):'.$row['score'];
}
?
thinkphp如何查詢數(shù)據(jù)庫?
數(shù)據(jù)庫查詢
ThinkPHP內(nèi)置了非常靈活的查詢方法,可以快速的進(jìn)行數(shù)據(jù)查詢操作。
查詢條件可以用于CURD等任何操作,作為where方法的參數(shù)傳入即可。
ThinkPHP可以支持直接使用字符串作為查詢條件,但是大多數(shù)情況推薦使用索引數(shù)組或者對象來作為查詢條件,因?yàn)闀影踩?/p>
查詢方式
一、使用字符串作為查詢條件
這是最傳統(tǒng)的方式,但是安全性不高,例如:
1
2
$User = M("User"); // 實(shí)例化User對象
$User-where('type=1 AND status=1')-select();
最后生成的SQL語句是
1
SELECT * FROM think_user WHERE type=1 AND status=1
二、使用數(shù)組作為查詢條件
1
2
3
4
5
$User = M("User"); // 實(shí)例化User對象
$condition['name'] = 'thinkphp';
$condition['status'] = 1;
// 把查詢條件傳入查詢方法
$User-where($condition)-select();
最后生成的SQL語句是
1
SELECT * FROM think_user WHERE 'name'='thinkphp' AND status=1
如果進(jìn)行多字段查詢,那么字段之間的默認(rèn)邏輯關(guān)系是 邏輯與 AND,但是用下面的規(guī)則可以更改默認(rèn)的邏輯判斷,通過使用 _logic 定義查詢邏輯:
1
2
3
4
5
6
$User = M("User"); // 實(shí)例化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內(nèi)置對象為例)
1
2
3
4
5
6
$User = M("User"); // 實(shí)例化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
使用對象方式查詢和使用數(shù)組查詢的效果是相同的,并且是可以互換的,大多數(shù)情況下,我們建議采用數(shù)組方式更加高效,后面我們會以數(shù)組方式為例來講解具體的查詢語言用法。
表達(dá)式查詢
上面的查詢條件僅僅是一個(gè)簡單的相等判斷,可以使用查詢表達(dá)式支持更多的SQL查詢語法,并且可以用于數(shù)組或者對象方式的查詢(下面僅以數(shù)組方式為例說明),查詢表達(dá)式的使用格式:
1
$map['字段名'] = array('表達(dá)式','查詢條件');
表達(dá)式不分大小寫,支持的查詢表達(dá)式有下面幾種,分別表示的含義是:
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框架技術(shù)文章欄目:
以上就是thinkphp如何查詢數(shù)據(jù)庫的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!