Как узнать количество строк в таблице Mysql на Javascript
Написал данный код, который достаёт из моей таблицы SQL все строки, в которых direction = 1
const sqlite3 = require('sqlite3').verbose(); // open the database let db = new sqlite3.Database('crdxims.db3'); let sql = `SELECT id id, direction direction FROM ACS_EVENT WHERE direction = ?`; let direction = 1 // first row only db.each(sql, [direction], (err, row) => { if (err) { return console.error(err.message); } return row ? console.log(row.id, row.direction) : console.log('No {id}'); }); // close the database connection db.close( ); Мне надо, чтобы выводились не все строки, а количество этих самых строк с direction = 1. Как это можно сделать?:help: |
Цитата:
SELECT COUNT(*) AS total FROM asc_event WHERE direction = ? И sqlite, это не MySQL. |
Цитата:
Так? const sqlite3 = require('sqlite3').verbose(); // open the database let db = new sqlite3.Database('crdxims.db3'); let sql = `SELECT id id, direction direction FROM ACS_EVENT WHERE direction = ?` let direction = 1 let sum = `SELECT COUNT(*) AS total FROM asc_event WHERE direction = ?` // first row only db.each(sql, [sum], (err, row) => { if (err) { return console.error(err.message); } return row ? console.log(row.sum) : console.log('No {sum}'); }); // close the database connection db.close( ); Если так, то при запросе через Node.js количество строк не указывает, выводит просто пустую строку. ![]() Если нет, то простите, туплю. Как тогда? |
Я не знаю Node.js, чего там и как я сказать не могу, но если вам нужно узнать только количество записей в таблице, то зачем вы получаете сами записи? Получить количество записей, это COUNT(*) AS алиас, и после запроса и выводите алиас, который и будет содержать количество записей в таблице.
|
Цитата:
const sqlite3 = require('sqlite3').verbose(); // open the database let db = new sqlite3.Database('crdxims.db3'); let sql = `SELECT COUNT(*) AS total FROM ACS_EVENT WHERE direction = ?` // first row only db.each(sql, [total], (err, row) => { if (err) { return console.error(err.message); } return row ? console.log(row.total) : console.log('No {total}'); }); // close the database connection db.close( ); Выводит: ![]() То есть модификатор не объявлен. Если объявить его строчкой let total То выводит число 0. Что конкретно нужно сделать, чтобы модификатор был объявлен? |
Цитата:
|
Часовой пояс GMT +3, время: 12:16. |