我正在尝试获取 MySQL 表中特定列中具有特定输入的所有行。 这是我的表格:
ID COLOR LENGTH
--- ------- ------
19 red 10
3 green 45
24 blue 54
4 red 3
5 red 11
如何获取 “COLOR”
列中存储有 “red”
值的所有行?有人可以帮忙吗?
我是 MySQL/PHP 的新手,如果这是一个愚蠢的问题,请原谅我。我尝试四处寻找,但找不到答案
最佳答案
由于您是新手,我想推荐正确的 SQL 编码。命名您需要的所有列,即使您需要表中存在的所有列。避免使用 SELECT * ...
方法。从今天起就养成良好的做法和习惯:
SELECT ID, COLOR, LENGTH FROM table WHERE COLOR = 'red';
一个关于如何使用 PHP 完成工作的非常基本的示例:
<?php
# variables you will need. values below are mere examples only
$server = 'localhost';
$database = 'databasename';
$username = 'username';
$password = 'password';
# create database connection
try {
$pdodb = new PDO('mysql:host='.$server.';dbname='.$database, $username, $password);
$pdodb->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $ex) {
printf($ex->getMessage());
exit;
}
# use prepared statements, for starters:
$stmt = $pdodb->prepare("SELECT ID, COLOR, LENGTH FROM table WHERE COLOR = ?");
$stmt->bindValue(1, 'red')
$stmt->execute();
# store each row into an array
$resultset = array();
do {
$resultset[] = $onerow;
} while ($onerow = $stmt->fetch(PDO::FETCH_COLUMN));
# to test your resultset:
print_r($resultset); # use this only to display during debugging/testing
?>
以下是可帮助您入门的文章链接:
关于php - 根据表列之一中的特定输入获取多个 MySQL 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8572463/