一. 数据库操作
1. 查询所有记录
select * from tableName;
通过 select 语句,查询 user 表中所有记录。
select:代表当前是查询语句。
**:代表查询 user 表中的所有字段。
from:用于指定将要查询的表名。
user:代表查询 user 表的数据。
2. 查询记录中指定字段的数据
select field1, field2,.... from tablename;
3. 查询指定数据表中指定字段中的数据,并为显示字段起别名
方式一
select field1 as aliasName, field2 as aliasName,.... from tablename;
方式二
select field1 aliasName, field2 aliasName,.... from tablename;
4. 条件查询
select * from tableName where condition;
where 关键字注意:
1、where 关键字可以使用比较运算符指定任何条件。
2、where 条件可以是一个,也可以是多个,这些条件可以用逻辑运算符连接。
MySQL 比较运算符:
| 比较运算符 | 说明 |
|---|---|
| = | 等于,检测两个值是否相等,如果相等则返回true |
| <>、!= | 不等于,检测两个值是否不相等,如果不相等则返回true |
| < | 小于,检测左边的值是否小于右边的值,如果小于则返回true |
| <= | 小于或等于,检测左边的值是否小于或等于右边的值,如果小于或等于则返回true |
| > | 大于,检测左边的值是否大于右边的值,如果大于则返回true |
| >= | 大于或等于,检测左边的值是否大于或等于右边的值,如果大于或等于则返回true |
MySQL 逻辑运算符:
| 逻辑运算符 | 说明 |
|---|---|
| and | 表示多个条件都必须满足 |
| or | 表示满足任意条件就可以 |
| not | 表示除了满足条件以外的数据 |
5. 模糊查询
select * from tableName where field like '_%';
模糊查询用于查询对字符串类型数据进行部分内容的匹配查询
_ 表示匹配一个任意字符
%表示匹配多个任意字符
6. 空值查询
select * from tableName where field is null;select * from tableName where field is not null;
二. PDO操作
在 PHP 中,想要对 MySQL 执行查询操作,可以通过 PDO 的 query() 方法来实现。
query() 方法不同于 exec() 方法,它通常用于执行 select 语句,返回值是 PDOStatement 实例。
1. 执行SQL查询语句
PDOStatement PDO::query(String sql)
<?phpheader("content-type:text/html;charset=utf-8");$url = "mysql:host=127.0.0.1;dbname=cai";$user = "root";$pwd = "123";$conn = new PDO($url,$user,$pwd);$st = $conn->query("select * from user");print_r($st);
2. 获取查询结果
获取结果集中的一条记录
array PDOStatement::fetch( [ int $fetch_style [ , int $cursor_orientation [ , int $cursor_offset ]]])
通过 PDOStatement 实例,调用 fetch() 方法,获得查询结果集中的一条记录。
fetch_style 参数决定 POD 如何返回行,此值必须是 PDO::FETCH_* 系列常量中的一个,缺省为 PDO::ATTR_DEFAULT_FETCH_MODE 的值 (默认为 PDO::FETCH_BOTH )。
PDO::FETCH_ASSOC:返回一个索引为结果集列名的数组(常用)PDO::FETCH_BOTH(默认):返回一个索引为结果集列名和以0开始的列号的数组
$res = $st->fetch(PDO::FETCH_ASSOC);
3. 练习(文章展示)
<?php$url = "mysql:host=mysql;dbname=database_lesson_30511_14_11193";//数据库ip和库名$user = "lesson_30511_14_11193";//数据库用户$pwd = "73dfdd838bac3292c8fef675e72631de";//数据库密码$pdo = new PDO($url,$user,$pwd);// DML inert deletet update// DQL select// $sql = "select * from content;";// $sql = "select * from content where id = 1;";// $sql = "select * from content where source is not null;";// $sql = "select * from content where name like '%张一山%';";$sql = "select name as title,content,source,author,click,date from content where id = 1";echo $sql . "<br>";$st = $pdo->query($sql);$res = $st->fetch(PDO::FETCH_ASSOC);//$name = $res['name'];$content = $res['content'];$source = $res['source'];$author = $res['author'];$click = $res['click'];$date = $res['date'];// echo $content;?><!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#news{width:1200px;margin: 0 auto;text-align: center;background: rgb(245, 248, 253);}#title{list-style: none;display: flex;justify-content: space-around;}#content{text-align: left;}h1{color:red;}</style></head><body><div id="news"><h1> <?php echo $name; ?></h1><ul id="title"><li>来源: <?php echo $source; ?></li><li>作者: <?php echo $author; ?></li><li>发布时间 : <?php echo $date; ?></li><li> <?php echo $click; ?> 次浏览</li></ul><div id="content"> <?php echo $content; ?></div></div></body></html>
