MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之?dāng)?shù)據(jù)查詢(xún)
概述
從今天開(kāi)始, 小白我將帶領(lǐng)大家一起來(lái)補(bǔ)充一下 數(shù)據(jù)庫(kù)的知識(shí).

條件查詢(xún)
我們可以使用關(guān)鍵詞Where來(lái)指定條件, 用于插入, 修改刪除或者查詢(xún)數(shù)據(jù).
| 運(yùn)算符 | 描述 |
|---|---|
| = | 等于 |
| <> | 不等于 |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <= | 小于等于 |
| between and | 小于等于 |
| and | 與, 表示左右兩邊的條件同時(shí)成立 |
| or | 或, 表示左右兩邊只要有一個(gè)條件成立 |
表記錄:

例 1
從表中篩選女性用戶(hù):
<?php
# 創(chuàng)建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");
# 查看是否連接成功
if ($conn) {
echo "服務(wù)器連接成功!\n";
} else {
echo mysqli_connect_error();
}
# SQL語(yǔ)句, 條件查詢(xún)
$SQL = "SELECT * FROM user
where sex=2";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(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語(yǔ)句執(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 的用戶(hù):
<?php
# 創(chuàng)建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");
# 查看是否連接成功
if ($conn) {
echo "服務(wù)器連接成功!\n";
} else {
echo mysqli_connect_error();
}
# SQL語(yǔ)句, 條件查詢(xún)
$SQL = "SELECT * FROM user
where salary>=5000";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(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語(yǔ)句執(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
)
運(yùn)算符 IN
運(yùn)算符 IN 允許我們?cè)?WHERE 子句中過(guò)濾某個(gè)字段的多個(gè)值.
SQL 語(yǔ)句:
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語(yǔ)句, 條件查詢(xún)
$SQL = "SELECT * FROM user
WHERE username IN
('我是小白呀', '王二狗')";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(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語(yǔ)句執(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語(yǔ)句, 條件查詢(xún)
$SQL = "SELECT * FROM user
WHERE id IN
(1, 2)";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(zhí)行成功!\n";
} else {
echo mysqli_error($conn);
}
# 調(diào)試輸出
while ($line = mysqli_fetch_assoc($result)) {
print_r($line);
}
# 關(guān)閉連接
mysqli_close($conn);
?>運(yùn)算符 Like
在 WHERE 子句中, 有時(shí)候我們需要查詢(xún)包含某字符串的所有記錄, 這時(shí)就需要用到運(yùn)算符 Like.
SQL 語(yǔ)句:
SELECT 列名 FROM 表名 WHERE 列名 LIKE %值%
注意:
- LIKE 子句中的
%類(lèi)似于正則表達(dá)式中的 *, 匹配任意 0 個(gè)或多個(gè)字符 - LIKE 子句中的
_匹配任意單個(gè)字符 - LIKE 子句中如果沒(méi)有
%和_, 就相當(dāng)于運(yùn)算符=的效果
例 1
查找姓王的用戶(hù):
<?php
# 創(chuàng)建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");
# 查看是否連接成功
if ($conn) {
echo "服務(wù)器連接成功!\n";
} else {
echo mysqli_connect_error();
}
# SQL語(yǔ)句, 查找王姓
$SQL = "SELECT * FROM user WHERE username LIKE '王%'";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(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語(yǔ)句執(zhí)行成功!
Array
(
[id] => 3
[username] => 王富貴
[password] => 123456
[sex] => 1
[salary] => 1000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)
例 2
名字為三個(gè)字:
<?php
# 創(chuàng)建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");
# 查看是否連接成功
if ($conn) {
echo "服務(wù)器連接成功!\n";
} else {
echo mysqli_connect_error();
}
# SQL語(yǔ)句, 條件查詢(xún)
$SQL = "SELECT * FROM user WHERE username LIKE '___'";
# 執(zhí)行SQL語(yǔ)句
$result = mysqli_query($conn, $SQL);
# 查看是否執(zhí)行成功
if ($result) {
echo "SQL語(yǔ)句執(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)用專(zhuān)題之?dāng)?shù)據(jù)查詢(xún)的文章就介紹到這了,更多相關(guān)MySQL 數(shù)據(jù)查詢(xún)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之表連接
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之?dāng)?shù)據(jù)查詢(xún)語(yǔ)句
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之內(nèi)置函數(shù)
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之?dāng)?shù)據(jù)完整性
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之增刪改查
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之創(chuàng)建數(shù)據(jù)庫(kù)表
- MySQL與PHP的基礎(chǔ)與應(yīng)用專(zhuān)題之?dāng)?shù)據(jù)控制
相關(guān)文章
MySQL中子查詢(xún)的具體實(shí)現(xiàn)
MySQL 提供了子查詢(xún)這一強(qiáng)大工具,幫助我們實(shí)現(xiàn)嵌套查詢(xún),本文主要介紹了MySQL中子查詢(xún)的具體實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09
幾個(gè)常見(jiàn)的MySQL的可優(yōu)化點(diǎn)歸納總結(jié)
這篇文章主要介紹了幾個(gè)常見(jiàn)的MySQL的可優(yōu)化點(diǎn)歸納總結(jié),包括在編程時(shí)處理索引、分頁(yè)以及數(shù)據(jù)類(lèi)型時(shí)可用到的地方,需要的朋友可以參考下2015-05-05
解決MySQL數(shù)據(jù)庫(kù)鏈接超時(shí)報(bào)1129錯(cuò)誤問(wèn)題
MySQL?為了數(shù)據(jù)庫(kù)的安全性默認(rèn)在鏈接中斷或者錯(cuò)誤時(shí)記錄錯(cuò)誤鏈接的ip?等信息(host_cache),有點(diǎn)像系統(tǒng)的錯(cuò)誤日志的一種機(jī)制,這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)鏈接超時(shí)報(bào)1129錯(cuò)誤解決辦法,需要的朋友可以參考下2022-10-10
MySQL配置文件my.cnf優(yōu)化詳解(mysql5.5)
這篇文章主要介紹了MySQL配置文件my.cnf優(yōu)化詳解,需要的朋友可以參考下2014-12-12
一文搞懂mysql如何處理json格式的字段(解析json數(shù)據(jù))
這篇文章主要給大家介紹了關(guān)于mysql如何處理json格式的字段的相關(guān)資料,MySQL中的JSON類(lèi)型是一種數(shù)據(jù)類(lèi)型,用于存儲(chǔ)和處理JSON(JavaScript Object Notation)格式的數(shù)據(jù),需要的朋友可以參考下2023-12-12
mysql 鎖表鎖行語(yǔ)句分享(MySQL事務(wù)處理)
下面這個(gè)語(yǔ)句是鎖定一行數(shù)據(jù),開(kāi)始讀取,一直到刪除后都不會(huì)有第二個(gè)人也讀到這條數(shù)據(jù)2011-09-09
完美解決MySQL通過(guò)localhost無(wú)法連接數(shù)據(jù)庫(kù)的問(wèn)題
下面小編就為大家?guī)?lái)一篇完美解決MySQL通過(guò)localhost無(wú)法連接數(shù)據(jù)庫(kù)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
MySQL 使用事件(Events)完成計(jì)劃任務(wù)
事件(Events) 是在 MySQL 5.1后引入的,有點(diǎn)類(lèi)似操作系統(tǒng)的計(jì)劃任務(wù)(cron),但是周期性任務(wù)是內(nèi)置在 MySQL 服務(wù)端執(zhí)行的。本文講述MySQL如何用事件完成計(jì)劃任務(wù)2021-05-05

