当前位置: 首页 > 面试题库 >

简单的mysql查询以检查行是否存在

陈斌蔚
2023-03-14
问题内容

我想向用户显示他是否喜欢图像。为此,我正在创建php代码

$userid=$_COOKIE['userid'];
$sql = "SELECT * FROM likes WHERE `user_id`='{$userid}'"; 
$query = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($query);
if($row){
echo "unlike";
}
else{
echo "like";
}

我无法对“标签”,“份额”,“评论”,“收藏夹”等事物执行此操作…许多没有比这更简单的了吗?喜欢说$row_check=mysqli_check_exist($table,$column_name,$userid);


问题答案:

确实有很多方法可以做到这一点,但是如果您打算使用更多的信息,那么用户是否喜欢使用select *是一个坏主意。原因是您要数据库返回该表中每一列的值。

假设它是一个小型数据库,可能不是问题,但是随着数据库变大,您将在数据库上施加更多的负载,那么您需要尝试并仅选择所需和打算使用的列。好的,在这种情况下,用户ID可能已被索引并且只有一行,但是如果您习惯在这里进行操作,则也可以在其他位置进行操作。

试试这个吧。

$userid=$_COOKIE['userid'];
$sql = "SELECT count(user_id) as total FROM likes WHERE `user_id`='{$userid}'"; 
$query = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($query);

if( $row ['total'] > 0){
    echo "unlike";
}
else{
    echo "like";
}

这样我们就可以得到总数。简洁大方



 类似资料:
  • 问题内容: 这可能是一件容易的事,但是我是一个业余爱好者,事情对我来说并不奏效。 我只想检查$ lectureName显示的行是否存在。如果某行确实存在$ lectureName,我希望该函数返回“ assigned”(如果没有),则它应返回“ available”。这就是我所拥有的。我相当确定这是一团糟。请帮忙。 当我这样做时,所有返回的内容都是可用的,即使应该返回已分配的内容。 问题答案: 这

  • 问题内容: 谁能指出如何检查选择查询是否返回非空结果集? 例如,我有下一个查询: 我应该像下一个那样做吗: 测试结果集是否不为空? 问题答案: 使用@@ ROWCOUNT: 根据SQL Server联机丛书: 返回受最后一条语句影响的行数。如果行数超过20亿,请使用ROWCOUNT_BIG。

  • 问题内容: 我需要帮助检查数据库中是否存在行。就我而言,该行包含一个电子邮件地址。我得到结果: 这是我当前正在使用的代码: 有没有更好的方法来检查MySQL中是否存在行(在我的情况下,检查MySQL中是否存在电子邮件)? 问题答案: 以下是经过尝试,测试和证明的检查行是否存在的方法。 (其中一些我自己使用,或者过去使用过)。 编辑: 我在使用两次的语法中犯了一个先前的错误。请查阅修订版本。 即:

  • 我需要帮助检查数据库中是否存在行。在我的例子中,该行包含一个电子邮件地址。我得到的结果是: 这是我目前使用的代码: 有没有更好的方法来检查MySQL中是否存在行(在我的例子中,检查MySQL中是否存在电子邮件)?

  • 问题内容: 我们有一个名为asamembr的表,其中有两个字段:cust_code和mbrcode。 还有另一个表成员消息与外键具有相同的字段,但是当我使用以下查询创建约束时: 我收到此错误: 您能否在表asamembr的两个字段cust_code和mbr_code上告诉您如何查询主键? 问题答案: 首先寻找PK的索引名称(pk_idx列) 其中的构造型: constrtype CHAR(1) C

  • 问题内容: 我具有以下数据库结构: 在我的项目永久链接页面上,我有一个“添加到收藏夹”按钮,可在其中插入新行 如果用户已经在收藏夹中将其替换为“从收藏夹中删除”按钮,我希望能够将其替换。 我无法弄清楚其背后的逻辑-是否需要检查其中是否存在具有当前用户ID和永久链接ID的行?这对我不起作用: 问题答案: 您可能想要这样的东西: