php - if语句在查询中?

标签 php mysql sql

我的数据库中有 3 个表:

用户:

id  ------- username
1            user1  
2            user2

作家

id  ------- name
4           writer4
5           writer5 
8           writer8

正在关注:

user_id  -----  follow  
1               5
1               8
2               5

所以,现在 User1 关注 writer5 和 writer8,而 user2 关注 writer5

我以 user1 身份登录到我的应用程序,当我转到作者页面时,我得到了数据库中所有作者的列表 .. 我只是想在每个作者面前展示我是否关注这个作者..

列表作者页面示例:

writer4     :follow
writer5     :unfollow (i'm following him now)
writer8     :unfollow (i'm following him now)
writer100     :follow 

我的问题是:如果我没有(作为 user1)关注这位作家,是否有查询来获取完整的作者列表并给我一个 value=0

有什么想法吗? 谢谢..

最佳答案

SELECT
 writers.username,
 IFNULL(following.user_id,0) AS isFollowing
FROM
 writers
 LEFT JOIN following ON writers.id = following.follow

然后在 php 中您可以检查 $results['isFollowing'] 是真 (>=1) 还是假 (0) 并显示您需要的内容。

关于php - if语句在查询中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11964454/

相关文章:

php - 如何使用 PHP 和 Codeigniter 处理 foreach 中 mysql 中的 SELECT(MAX())

mysql - Plone + SqlAlchemy + MySql 中未提交的事务

mysql - 寻找包含所有美国邮政编码、州和城市的最新 SQL 数据库

mysql - 内连接 2 计数语句

javascript - 过滤包含一些文本的 PHP 数据表

php - 使用 PHP 更新 MySQL 数据库,将所有列设置为 0 而不是 1

php - 我如何在 PHP 中声明 'sub-objects'

java - Hibernate DB 连接池 c3p0 有问题

java - 如何在hibernate中查找外键的id

mysql - 日志中每天的每周活跃用户数