gpt4 book ai didi

mysql - SQL : data aren't found

转载 作者:行者123 更新时间:2023-11-29 06:56:55 25 4
gpt4 key购买 nike

我正在尝试获取下一个 sql 查询创建的数据:

select groups.name, members.status 
from `members`
inner join `groups` on groups.group_id = members.group_id
where `user_id` = 1

我的应用程序中有两个表。
成员:
enter image description here

和表:
enter image description here

我使用 NodeJS 的包 mysql 来处理 MySQL。

我正在尝试获取函数中的数据:

function getGroups(req, res) {

const sql = 'select groups.name, members.status from `members` inner join `groups` on groups.group_id = members.group_id where `user_id` = 1';
connection.query(sql, (err, results) => {
console.log(req.payload.id);
console.log(results);
if (err) {
res.status(400);
}

if (results && results.length > 0) {
res.status(200).json(results);
}

if (results && results.length === 0) {
res.status(200).json('Empty');
}
});
}

为什么找不到数据?请帮助我。
我用来写sql查询的一个SQL教程:
https://www.w3schools.com/sql/sql_join_inner.asp

最佳答案

我认为您的查询不明确,这使数据库感到困惑,并且它不会返回两个表中的 user_id 的任何内容,并且您编写了 where user_id = 1 可能是这种情况尝试控制台错误你的代码应该是这样的..

function getGroups(req, res) {

const sql = 'select g.name, m.status from members m inner join groups g on g.group_id = m.group_id where g.user_id = 1';
//use g.user_id or m.user_id whatever you want.
connection.query(sql, (err, results) => {
console.log(req.payload.id);
console.log(results);
if (err) {
res.status(400);
}

if (results && results.length > 0) {
res.status(200).json(results);
}

if (results && results.length === 0) {
res.status(200).json('Empty');
}
}); }

It's Always good to give alias of the table when you are using complex queries See this Hopefully this will help

关于mysql - SQL : data aren't found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45187117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com