为了账号安全,请及时绑定邮箱和手机立即绑定

如何检查sql的第一列或第二列中是否存在一个特定值?

如何检查sql的第一列或第二列中是否存在一个特定值?

慕尼黑8549860 2021-11-26 15:26:21
我有一个价值。现在,我想检查“from_user_id”列或“to_user_id”列中是否存在该值,然后我想返回包含该值的最后一条记录,该值将位于“from_user_id”或“to_user_id”列中。$query3 = $this->db->query("select * from message where 26 IN(from_user_id,to_user_id) desc limit 1");foreach($query3->result() as $row){   $message = $row->message;}我试过这个。但它不起作用。$query3 = $this->db->query("select * from message where 26 IN(from_user_id,to_user_id)");foreach($query3->result() as $row){    $message = $row->message;} 我也试过这个没有给我最后的记录。
查看完整描述

3 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

SELECT * 

FROM message 

WHERE from_user_id = 26 OR to_user_id = 26

ORDER BY id DESC

LIMIT 1

假设,在您的消息表中,您有一个整数主键作为id。如果没有,将 order by 语句更新到正确的字段


查看完整回答
反对 回复 2021-11-26
?
温温酱

TA贡献1752条经验 获得超4个赞

检查这个很容易


 $this->db->where('from_user_id', 26);

 $this->db->or_where('to_user_id', 26);

 $result = $this->db->get('message')->result();


 if(isset($result) && count($result) > 0){ 

     foreach($result as $row)

     {

        $message = $row->message;

     }

  }else{

     echo 'No result found';  

  }


查看完整回答
反对 回复 2021-11-26
?
HUWWW

TA贡献1874条经验 获得超12个赞

你可以做一个这样的活动记录:


$id = 26;

$this->db->where('from_user_id', $id)

    ->or_where('to_user_id', $id)

    ->order_by('message_id','desc')

    ->limit(1);

$query3 = $this->db->get('message')->row();


if (!empty($query3)) {

    $message = $query3->message;

} else {

    echo 'No message found!';

}

message_id消息表 id在哪里。


查看完整回答
反对 回复 2021-11-26
  • 3 回答
  • 0 关注
  • 315 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信