php - MySql 从具有多个条件的表中选择

标签 php mysql database request

我需要在“main=1”时从数据库中选择一次,然后在“main=0”时从数据库中选择所有并在同一请求中使用它们。我可以在一个请求中执行此操作吗? 这是请求

1.

$result = $apt->query("SELECT * FROM cat where main='0'");

while($row=$apt->dbarray($result)){

@extract($row);

2.

$result = $apt->query("SELECT * FROM cat where main='1'");

while($row=$apt->dbarray($result)){

@extract($row);

我有点需要将它们合并到一个请求中,因为这会在执行 2 个请求时产生冲突。 谢谢

最佳答案

你有几个选择

SELECT * from cat where main = '0' or main ='1'; 

SELECT * from cat where main in ('0','1');

如果您所说的冲突是指维护两个查询之间的并发性,那么这种方式和将整个操作包装在事务中是确保并发性的唯一方法。

这是一个示例,说明如何使用上面的查询来模拟您提供的代码,但在单个查询中执行。

  $result = $apt->query("SELECT * FROM cat where main='0' or main = '1' order by main");
  while($row=$apt->dbarray($result)){
        @extract($row);
        switch ($main){
            case 0:
                // do stuff for when main = 0
                break;
            case 1:
                // do stuff for when main = 1
                break;
        }
  }

关于php - MySql 从具有多个条件的表中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17120189/

相关文章:

php - 尝试了解数据库架构,特别是 WordPress 评论

php - 使用 Youtube Data API V3 和 Google API Client PHP 将视频上传到 Youtube - 获取 401(未经授权)消息

php - 创建 TRIGGER 给出错误 (MySQL)

mysql - 从多对多关系中选择 Sequelize

由于空格,MySQL 在 bash 中发送错误

mysql - 可以托管一个简单的 Web 表单,提交到网络驱动器上的 MySQL 数据库

php - Twig - 打印没有空值的数组

javascript - 如何在日期选择器 php mysql 中选择一个日期?

mysql - SQL 连接和选择

javascript - 如何在 ng-repeat angularjs 中传递多个 $scope 值?