我希望能够根据设计师的工作来过滤帖子,我在设计师表中将每个帖子都放在一个 bool 值中 即 Logo :1,网站:0 ID 是两个表中相同的外键,因此我想根据设计器表中的数据显示帖子。
$sqldesigner = SELECT designerID FROM designers WHERE logo = 1;
$sqlall = SELECT * FROM post WHERE designerID = $sqldesigner;
我想根据发布帖子的设计师显示帖子,在这个例子中,设计师制作 Logo ,所以在设计师表中,当他注册时,他勾选了一个框,上面写着 Logo ,将 Logo bool 值设置为 1,目前我在页面上显示所有帖子,但我想有一个按钮来过滤这些帖子以仅显示制作 Logo 的设计师制作的帖子,我的第一个查询是获取制作 Logo 的设计师的所有 ID,然后我的第二个查询是获取那些设计师的所有帖子
希望我在这里提供了足够的信息,并提前感谢您的帮助
最佳答案
您可以使用以下 SQL 语句来满足您的需求:
SELECT * FROM post WHERE id IN (SELECT ID FROM designers WHERE logo = 1);
SQL IN 运算符允许您在 WHERE 子句中指定多个值。 IN 运算符是多个 OR 条件的简写。 有关 SQL IN 运算符的更多信息,请参见 here .
或
SELECT p.*, d.id FROM post p,designers d WHERE p.id = d.id AND d.logo = 1;
它的作用是帮助您将 post 重命名为 p,将 designers 重命名为 d,然后根据两个不同的表应用您的 where 条件。
以上两个查询都可以用来解决您的问题。
关于php - 我可以有一个 SQL 查询,其中我从 ID = 另一个查询的表中选择所有内容吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49972957/