自从我使用MySQL以来已经有一段时间了。我不记得从多个sql表中获取不同类型的数据的最佳方法和确切技术是什么。
我正在构建一个shell页面来加载来自旧网站的数据,我只是尝试加载最近的三个博客帖子,其中标题在一个表中,用户名在另一个表中,发布的url在另一个表中。
我不希望只有来自同一用户的三个帖子。想想我在那里感到困惑。
基本上我希望能够像这样打印所有记录
1, 17, 2, "First Post", "bob", "dole", "/first-post"
2, 18, 2, "Second Post", "bob", "dole", "/second-post"
3, 19, 1, "Third Post", "ron", "unix", "/third-post"
content.contentid = urls.assocId(for url) content.author = users.userId(用户名)
create table content (
id int,
contentid int,
author int,
title varchar(16)
);
create table users (
id int,
userId int,
firstName varchar(16),
lastName varchar(16)
);
create table urls (
id int,
assocId int,
url varchar(16)
);
insert into content values
(1, 17, 2, "First Post"),
(2, 18, 2, "Second Post"),
(3, 19, 1, "Third Post");
insert into users values
(1,1,"bob", "dole"),
(2,2,"ron", "unix");
insert into urls values
(1, 17, "/first-post"),
(2, 18, "/second-post"),
(3, 19, "/third-post");
http://sqlfiddle.com/#!9/e99cf
由于
答案 0 :(得分:2)
在3个表之间只是一个简单的Double i=0;
i = Convert.ToDouble(Convert.ToDouble(Datagridview.Rows[x].Cells[0].Value) + Convert.ToDouble(Datagridview.Rows[x+1].Cells[0].Value))
。
INNER JOIN
如果SELECT c.id, c.contentid, u.userId, u.firstName, u.lastName, urls.url
FROM content AS c
JOIN users AS u ON c.author = u.id
JOIN urls ON c.contentid = urls.assocId
ORDER BY c.id DESC
LIMIT 3
表中有date
字段,您可以将其用于content
列,以便及时获取最新信息。我在我的示例中使用了ORDER BY
字段。