如何在MYSQL查询WHERE语句中创建IF语句

这可以用SQL来完成吗?


我需要根据 $query 是否为false WHERE (u.id_user = ".$userId." OR fu.id_user = ".$userId." OR ff.id_user = ".$userId.")"ELSE来进行 SQL 选择"$query";


这是我必须满足两个条件的起点:


  $validatedSearchData = array(

     "q"=>strip_tags($_GET["q"])

  );


  $query= " AND a.tags LIKE ".lib::$db->qstr("%".$validatedSearchData["q"]."%");


  $feed = lib::$db->GetAll("SELECT SQL_CALC_FOUND_ROWS

                                         a.*,

                                         u.name,

                                         fu.id_user AS fu_user_id,

                                         ff.id_followed_user AS ff_user_id

                                  FROM feed AS a

                                  LEFT JOIN userfollow AS fu ON a.id_author = fu.id_user

                                  LEFT JOIN userfollow AS ff ON a.id_author = ff.id_followed_user

                                  INNER JOIN user_profiles AS u ON a.id_author = u.id_user

                                  WHERE (u.id_user = ".$userId." OR fu.id_user = ".$userId." OR ff.id_user = ".$userId.")" . $query. "

                                  GROUP BY a.id_article

                                  ");


UYOU
浏览 172回答 1
1回答

吃鸡游戏

更改此行$query= " OR a.tags LIKE ".lib::$db->qstr("%".$validatedSearchData["q"]."%");用 OR 代替 AND
打开App,查看更多内容
随时随地看视频慕课网APP