对同一个表 mysql 进行多个查询


Multiple queries on same table mysql

>我有这样的表格:

users_info:
userID | title     | content
1      | Firstname | Tester
1      | Lastname  | Wester
2      | Firstname | LKks

我想使用 PHP 函数检查数据库中是否已经存在名字和姓氏。如何运行简单的查询来检查是否有任何结果?名字的变量是:$firstname,姓氏的变量是$lastname。

感谢您的帮助!

我认为最好的方法是子查询。

SELECT userID from users_info where title = 'Firstname' and content = '$firstname' AND
userID IN (SELECT userID from users_info where title = 'Lastname' and content = '$lastname')

如果得到任何结果。 您有具有此名字的行和具有相同 ID 的姓氏。

function tableValidate($firstname, $lastname)
{
$query = $dbConnect->prepare("SELECT * FROM users_info WHERE title = ? AND content = ?");
$query->bindValue(1, 'Firstname');
$query->bindValue(2, $firstname);
$query->execute();
try
{
    $result = $query->rowCount();
} 
catch(PDOException $e)
{
    die($e->getMessage());
}
$queryOne = $dbConnect->prepare("SELECT * FROM users_info WHERE title = ? AND content = ?");
$queryOne->bindValue(1, 'Lastname');
$queryOne->bindValue(2, $lastname);
$queryOne->execute();
try
{
    $resultOne = $queryOne->rowCount();
} 
catch(PDOException $e)
{
    die($e->getMessage());
}
if($result > 0 && $resultOne > 0)
{
    echo "Firstname and Lastname Exists";
}
else if ($result > 0)
{
    echo "Firstname Exists";
}
else if ($resultOne > 0)
{
    echo "Lastname Exists";
}
else
{
    echo "Success";
}
}