如何获得有计数的总行数?

时间:2017-06-12 03:50:15

标签: sql sql-server

我想问一下如何获取表中的总行数?

如果我有这样的表:

Img1

一切正常。

但如果我有2列的表格怎么办?

Img2

,总数将为5

我只想知道如何获得像我的第二张图片一样的总数?

提前致谢

3 个答案:

答案 0 :(得分:1)

我在下面留下的原始答案向您展示了如何使用分组集来获取整个表的计数。如果您希望逐字输出预期的输出,那么唯一的选项可能是这样的联合查询:

$sql = 'SELECT COUNT(name) AS totalRecords FROM `TABLE` WHERE name = ? GROUP BY name';
$stmt = $conn->prepare($sql);
$stmt->execute(array($name));
$result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
$row = $stmt->fetch(); /* This will return a single record. */

echo 'Total records: ' . $row['totalRecords'];

这在demo中提供了以下输出:

enter image description here

如果您只想要包含总计的行:

,您也可以尝试使用分组集
SELECT
    COALESCE(t.id, 'total') AS id,
    t.item
FROM
(
    SELECT CONVERT(varchar(10), id) AS id, item
    FROM cte
    UNION ALL
    SELECT null, CONVERT(varchar(10), COUNT(*))
    FROM cte
) t
ORDER BY CASE WHEN t.id IS NOT NULL THEN 0 ELSE 1 END;

分组集可能是一种比联合查询更有效,更灵活的方式来包含此类信息。

<强>输出:

enter image description here

在这里演示:

Rextester

答案 1 :(得分:0)

const App = () => (
    <Router history={hashHistory}>
        <MuiThemeProvider>
            <Switch>
                <Route exact path="/" component={ChatApp} />
                <Route exact path="/signup" component={SignUp} />
                <Route exact path="/logout" component={Logout} />
                <Route exact path="/forgotpwd" component={ForgotPassword} />
                <Route exact path="*" component={NotFound} />

            </Switch>
        </MuiThemeProvider>
    </Router>
);

ReactDOM.render(
    <App />,
    document.getElementById('root')
);

在第二个查询中,从表中写下要计数的列名。

答案 2 :(得分:0)

{{1}}

它适用于你

相关问题