小编You*_*nse的帖子

结合多个SQL查询以提高速度

我有一个大约有1000万行的MySQL数据库和一个简单的SQL查询:

SELECT output FROM `table` WHERE MA > Price
Run Code Online (Sandbox Code Playgroud)

除了以上,我想得到:

  • 返回结果的平均值
  • 返回结果的标准偏差
  • 返回的结果总数
  • 结果的百分比是积极的

我现有代码的问题(如下所示)是我多次查询表.这看起来非常低效.

是否可以查询数据库一次,然后萃取,如平均值,标准偏差,信息.从结果?如果是这样,最有效的方法是什么?

SELECT STDDEV_POP(output) FROM `table` WHERE MA > Price
SELECT AVG(output) FROM `table` WHERE MA > Price
SELECT COUNT(output) FROM `table` WHERE MA > Price AND output > 0
SELECT COUNT(output) FROM `table` WHERE MA > Price AND output < 0
Run Code Online (Sandbox Code Playgroud)

***编辑除了平均值,标准偏差和正百分比之外,是否还可以获得实际的"输出"值?换句话说,还可以包含以下查询吗?

SELECT output FROM `table` WHERE MA > Price
Run Code Online (Sandbox Code Playgroud)

mysql sql

0
推荐指数
1
解决办法
70
查看次数

SQL INTO将错误作为INTO表 - undefined

我正在尝试复制1个表选定列INTO第2个表选定列,使用此:

$sql = "SELECT (p.col1, p.col2)
INTO tblColors(b1,b2)
FROM tblPuppies as p
WHERE p.col3=1
";
Run Code Online (Sandbox Code Playgroud)

但它给了我错误:未定义的变量tblColors.对我来说很奇怪.任何猜测PLZ,哪里出错?先谢谢你.

php mysql sql

0
推荐指数
1
解决办法
110
查看次数

mysql 使用单个查询计算多种类型

我有一个表“用户”,其中每个用户都有一个包含值“1”或“2”或“3”的“状态”列;

现在,通过单个 mysqli 查询,我只想计算有多少 status = 1 的用户、有多少 status = 2 的用户以及有多少 status = 3 的用户

注意:查询必须仅计数,除了每个状态的数量之外,无需选择或输出任何数据。

我在这里发现了涵盖几乎相同主题的其他问题,但它们并不完全相同。

谢谢。

mysql sql

0
推荐指数
1
解决办法
1327
查看次数

在Mac中将DateTime格式显示为可读字符串

我有一个以这种格式存储的DateTime [2016-10-05 11:58:04].我想要做的是,将存储的时间显示为这种可读格式[Wed,11:58 AM].

php mysql

0
推荐指数
1
解决办法
43
查看次数

空字符串是否相当于布尔值 false

我有下面的代码

public function is_logged_in()
 {
   if(isset($_SESSION['userSession']))
   {
     return true;
    }
  }

  if($reg_user->is_logged_in()!="")//I don't understand this evaluation
   {
     $reg_user->redirect('home.php');
   }
Run Code Online (Sandbox Code Playgroud)

根据我有限的理解,该函数is_logged_in()返回一个布尔值,我注释的行上的条件是检查返回的值是否不等于空字符串。这是正确的方法吗?如果有人可以解释发生了什么我会很高兴。我是初学者,所以如果我的问题有点愚蠢,请原谅我。

php

0
推荐指数
1
解决办法
1万
查看次数

SQL AVG()至2位小数

我正在尝试获得该平均值以给我2个小数,因此我得到的不是17.4534,而是17.45。我在使用AVG的2个地方分别使用CAST尝试了各种组合,但似乎什么也无法工作。

这是我目前的代码,用于给出平均值(只有太多的小数)。

<?php
$sql3 = "SELECT AVG(app_tests.test_resultPercent) FROM app_tests"; 
$result3 = mysqli_query($conn,$sql3) or die(mysqli_error());
while($row3 = mysqli_fetch_array($result3))
    {
        echo "<h3>".$row3['AVG(app_tests.test_resultPercent)'];
    }
?>
</h3><p>Average % Lift</p>
Run Code Online (Sandbox Code Playgroud)

php mysql average

0
推荐指数
1
解决办法
3571
查看次数

编码的json数组开始时的空白区域

不可否认,自从我进入php世界以来已经有一段时间了,但我不确定为什么我在json_encode字符串的开头有3个空格.

"   [{"id":"1","display_name":"Bob"}]"
Run Code Online (Sandbox Code Playgroud)

这是我有的PHP:

$stmt = $conn->prepare("SELECT * FROM users");

$queryResult = array();
if ($stmt->execute()) {
  while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
      $queryResult[] = $row;
  }
  echo json_encode($queryResult);
}
Run Code Online (Sandbox Code Playgroud)

当我回声时,print_r($stmt->fetch(PDO::FETCH_ASSOC)) 我得到以下内容:

   Array
(
    [id] => 1
    [display_name] => Twitch Dock John
)
Run Code Online (Sandbox Code Playgroud)

那里还有3个空间..我做错了什么(期待传入的脸部时刻)?

php

0
推荐指数
1
解决办法
68
查看次数

多次显示mysqli结果

我最近问过这个问题,但它被标记为重复并被删除。请在标记之前先看看我的问题,因为它不一样,我正在努力弄清楚这一点。

我想将 MYSQLI 查询的“公司”和“区域”结果回显到我的页面中,位于 php 页面正文中的不同点。

仅显示第一个回声。请显示我的错误。

<?php 

$path = $_SERVER['DOCUMENT_ROOT'];
$path .= "/Connections/****";
include_once($path);

$dbhandle=mysqli_connect($hostname_Demo, $username_Demo, $password_Demo, $database_Demo);

if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$sql_RS1="SELECT * from CompanyName where area = 1";
$result=mysqli_query($dbhandle,$sql_RS1);

?>

<head>
<title>TEST</title>
</head>
<body>

<?php
while($row = mysqli_fetch_assoc($result))
{
    echo $row['company'];
}
?>

<?php
while($row = mysqli_fetch_assoc($result))
{
    echo $row['area'];
}
?>

<?php  $dbhandle->close();  ?>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

php mysqli

0
推荐指数
1
解决办法
1268
查看次数

SQL查询未正确执行DESC

我有一个问题,我不知道如何解决.我有这个问题:

$sql = "SELECT * FROM transfer_centre WHERE status = 'out' ORDER BY pris DESC";

pris我的数据库中有四个值: 0, 4, 8, 26

因此,正如查询所述,它们应该如下列出:

  • 26
  • 8
  • 4
  • 0

但不知何故,它将26的值视为2.6(我猜?),因此26在4和0之间?

有人可以帮我解决这个问题吗?

mysql sql database

0
推荐指数
1
解决办法
37
查看次数

mysqli无法创建表

我的mysql有问题.它连接到数据库,但它不会创建表.这是我的代码示例:

  $db = new mysqli('localhost', 'user.name', 'user.pass', 'db');

  if ($db === FALSE) {
     echo "ERRROR";
  }   

  $sql = "CREATE TABLE IF NOT EXISTS db (
      ID INT NOT NULL AUTO_INCREMENT,
      NAME VARCHAR(20) NULL
  )";

  $db->query($sql);

  if (mysqli_query($db, $sql)) {
     echo "TABLE CREATED SUCCESSFULLY";
  } else {
    echo "TABLE CREATED UNSUCCESSFULLY";
  }
Run Code Online (Sandbox Code Playgroud)

我感谢你的每一个答案,谢谢你的帮助!

php mysql mysqli

0
推荐指数
1
解决办法
79
查看次数

标签 统计

mysql ×7

php ×7

sql ×4

mysqli ×2

average ×1

database ×1