MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)查詢
概述
從今天開始, 小白我將帶領(lǐng)大家一起來補充一下 數(shù)據(jù)庫的知識.
條件查詢
我們可以使用關(guān)鍵詞Where
來指定條件, 用于插入, 修改刪除或者查詢數(shù)據(jù).
運算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between and | 小于等于 |
and | 與, 表示左右兩邊的條件同時成立 |
or | 或, 表示左右兩邊只要有一個條件成立 |
表記錄:
例 1
從表中篩選女性用戶:
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 條件查詢 $SQL = "SELECT * FROM user where sex=2"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
輸出結(jié)果:
服務(wù)器連接成功!
SQL語句執(zhí)行成功!
Array
(
[id] => 1
[username] => 我是小白呀
[password] => 123456
[sex] => 2
[salary] => 30000.00
)
Array
(
[id] => 2
[username] => 張美麗
[password] => 123456
[sex] => 2
[salary] => 5000.00
)
例 2
從表中篩選工資 >= 5000 的用戶:
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 條件查詢 $SQL = "SELECT * FROM user where salary>=5000"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
輸出結(jié)果:
服務(wù)器連接成功!
SQL語句執(zhí)行成功!
Array
(
[id] => 1
[username] => 我是小白呀
[password] => 123456
[sex] => 2
[salary] => 30000.00
)
Array
(
[id] => 2
[username] => 張美麗
[password] => 123456
[sex] => 2
[salary] => 5000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)
運算符 IN
運算符 IN 允許我們在 WHERE 子句中過濾某個字段的多個值.
SQL 語句:
SELECT 列名 FROM 表名 WHERE 列名 IN (值1, 值2, 值3, ...)
例 1
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 條件查詢 $SQL = "SELECT * FROM user WHERE username IN ('我是小白呀', '王二狗')"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
輸出結(jié)果:
服務(wù)器連接成功!
SQL語句執(zhí)行成功!
Array
(
[id] => 1
[username] => 我是小白呀
[password] => 123456
[sex] => 2
[salary] => 30000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)
例 2
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 條件查詢 $SQL = "SELECT * FROM user WHERE id IN (1, 2)"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
運算符 Like
在 WHERE 子句中, 有時候我們需要查詢包含某字符串的所有記錄, 這時就需要用到運算符 Like.
SQL 語句:
SELECT 列名 FROM 表名 WHERE 列名 LIKE %值%
注意:
- LIKE 子句中的
%
類似于正則表達式中的 *, 匹配任意 0 個或多個字符 - LIKE 子句中的
_
匹配任意單個字符 - LIKE 子句中如果沒有
%
和_
, 就相當(dāng)于運算符=
的效果
例 1
查找姓王的用戶:
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 查找王姓 $SQL = "SELECT * FROM user WHERE username LIKE '王%'"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
輸出結(jié)果:
服務(wù)器連接成功!
SQL語句執(zhí)行成功!
Array
(
[id] => 3
[username] => 王富貴
[password] => 123456
[sex] => 1
[salary] => 1000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)
例 2
名字為三個字:
<?php # 創(chuàng)建連接 $conn = mysqli_connect("localhost", "root", "admin", "study"); # 查看是否連接成功 if ($conn) { echo "服務(wù)器連接成功!\n"; } else { echo mysqli_connect_error(); } # SQL語句, 條件查詢 $SQL = "SELECT * FROM user WHERE username LIKE '___'"; # 執(zhí)行SQL語句 $result = mysqli_query($conn, $SQL); # 查看是否執(zhí)行成功 if ($result) { echo "SQL語句執(zhí)行成功!\n"; } else { echo mysqli_error($conn); } # 調(diào)試輸出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 關(guān)閉連接 mysqli_close($conn); ?>
到此這篇關(guān)于MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)查詢的文章就介紹到這了,更多相關(guān)MySQL 數(shù)據(jù)查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之表連接
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)查詢語句
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之內(nèi)置函數(shù)
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)完整性
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之增刪改查
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之創(chuàng)建數(shù)據(jù)庫表
- MySQL與PHP的基礎(chǔ)與應(yīng)用專題之?dāng)?shù)據(jù)控制
相關(guān)文章
mysql5.7.19 解壓版安裝教程詳解(附送純凈破解中文版SQLYog)
Mysql5.7.19版本是今年新推出的版本,最近幾個版本的MySQL都不再是安裝版,都是解壓版了,大家在使用過程中遇到很多問題,下面小編給大家?guī)砹薓ySQL5.7.19 解壓版安裝教程詳解,感興趣的朋友一起看看吧2017-10-10MySQL GRANT用戶授權(quán)的實現(xiàn)
授權(quán)就是為某個用戶賦予某些權(quán)限。MySQL 提供了 GRANT 語句來為用戶設(shè)置權(quán)限。具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06淺談訂單重構(gòu)之 MySQL 分庫分表實戰(zhàn)篇
這篇文章主要介紹了 MySQL 分庫分表方法的相關(guān)資料,需要的朋友可以參考下面文章內(nèi)容,希望能幫助到你2021-09-09mysql中l(wèi)imit查詢踩坑實戰(zhàn)記錄
在MySQL中我們常常用order by來進行排序,使用limit來進行分頁,下面這篇文章主要給大家介紹了關(guān)于mysql中l(wèi)imit查詢踩坑的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-03-03