MySQL與PHP的基礎與應用專題之數據查詢

概述

從今天開始, 小白我將帶領大傢一起來補充一下 數據庫的知識.

條件查詢

我們可以使用關鍵詞Where來指定條件, 用於插入, 修改刪除或者查詢數據.

運算符 描述
= 等於
<> 不等於
> 大於
< 小於
>= 大於等於
<= 小於等於
between and 小於等於
and 與, 表示左右兩邊的條件同時成立
or 或, 表示左右兩邊隻要有一個條件成立

表記錄:

例 1

從表中篩選女性用戶:

<?php

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 條件查詢
$SQL = "SELECT * FROM user 
        where sex=2";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

輸出結果:

服務器連接成功!
SQL語句執行成功!
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

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 條件查詢
$SQL = "SELECT * FROM user 
        where salary>=5000";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

輸出結果:

服務器連接成功!
SQL語句執行成功!
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

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 條件查詢
$SQL = "SELECT * FROM user 
        WHERE username IN
        ('我是小白呀', '王二狗')";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

輸出結果:

服務器連接成功!
SQL語句執行成功!
Array
(
[id] => 1
[username] => 我是小白呀
[password] => 123456
[sex] => 2
[salary] => 30000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)

例 2

<?php

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 條件查詢
$SQL = "SELECT * FROM user 
        WHERE id IN
        (1, 2)";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

運算符 Like

在 WHERE 子句中, 有時候我們需要查詢包含某字符串的所有記錄, 這時就需要用到運算符 Like.

SQL 語句:

SELECT 列名 FROM 表名 WHERE 列名 LIKE %值%

註意:

  • LIKE 子句中的%類似於正則表達式中的 *, 匹配任意 0 個或多個字符
  • LIKE 子句中的_匹配任意單個字符
  • LIKE 子句中如果沒有%_, 就相當於運算符=的效果

例 1

查找姓王的用戶:

<?php

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 查找王姓
$SQL = "SELECT * FROM user WHERE username LIKE '王%'";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

輸出結果:

服務器連接成功!
SQL語句執行成功!
Array
(
[id] => 3
[username] => 王富貴
[password] => 123456
[sex] => 1
[salary] => 1000.00
)
Array
(
[id] => 5
[username] => 王二狗
[password] => 123123
[sex] => 1
[salary] => 6000.00
)

例 2

名字為三個字:

<?php

# 創建連接
$conn = mysqli_connect("localhost", "root", "admin", "study");

# 查看是否連接成功
if ($conn) {
    echo "服務器連接成功!\n";
} else {
    echo mysqli_connect_error();
}

# SQL語句, 條件查詢
$SQL = "SELECT * FROM user WHERE username LIKE '___'";

# 執行SQL語句
$result = mysqli_query($conn, $SQL);

# 查看是否執行成功
if ($result) {
    echo "SQL語句執行成功!\n";
} else {
    echo mysqli_error($conn);
}

# 調試輸出
while ($line =  mysqli_fetch_assoc($result)) {
    print_r($line);
}

# 關閉連接
mysqli_close($conn);

?>

到此這篇關於MySQL與PHP的基礎與應用專題之數據查詢的文章就介紹到這瞭,更多相關MySQL 數據查詢內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: