我有一个名为palettes
的mySQL表,我想返回表中的链接数。基本上,我想返回link
列中的值数。 (在这种情况下,6
)。
我尝试使用此代码,但它无效。我是一个前端开发人员,不知道php或任何东西......
include "mysql.php";
$select_rows = $mysqli->query("SELECT COUNT(link) FROM palettes");
$rows = mysqli_fetch_array($select_rows);
$total = $rows[0];
echo $total;
以上代码应该或回显6
,对吧?从列link
这就是我的表格:
答案 0 :(得分:1)
将WHERE子句与LIKE' http%'一起使用并将您的查询更改为计算适合的ID:
首先,我假设您的文件' mysql.php'在文件中的某个位置连接到数据库,如下所示:
<?php
if (session_status() !== PHP_SESSION_ACTIVE) {session_start();}
$hostname = 'localhost';
$dbname = 'myDatabaseName';
$username = 'admin';
$password = 'myPassword';
$cxn = mysqli_connect($hostname, $username, $password, $dbname) or DIE('Connection to host is failed, perhaps the service is down!');
?>//End connect.php
现在你可以试试这个:
include 'mysql.php';
$select_rows = mysqli_num_rows(mysqli_query($cxn, "SELECT id FROM palettes WHERE link LIKE 'http%'"));
echo $select_rows; //Should = 6
答案 1 :(得分:0)
如果您没有链接,我会说假的地方为:
您可以通过使Link列默认允许NULL来实现。在这种情况下,您可以使用COUNT(链接)。建议这样做。
如果你必须有空字符串而不是NULL。
select sum(if(Link != "",1,0)) counting from palettes;
或者,如果您可以确保所有链接都以http / https
开头select sum(if(Link like "http%",1,0)) counting from palettes;