在 sql 中添加和排序列
adding and sorting a column in sql
我正在尝试在 sql 中合并两个 table,但遇到了问题。
table g 看起来像这样
id name
*************************
1234 john
3456 sarah
7890 ben
table f 看起来像这样
id count
**************************
3456 2
1234 7
7890 5
我想在 table g 中插入一列,等于 table f 中的计数,并根据 ID 排序。
我试过使用 INNER JOIN 和 UNION 命令,但它们似乎都不起作用。有谁知道解决方案?这似乎是一个很常见的问题。
SELECT g.id, g.name, f.count
FROM f,g
WHERE f.id = g.id
ORDER BY g.id;
以上是一个简单的连接查询。
在简单的连接查询中,您 select 从两个表中获取所需的信息并将 where 条件设置为等于您要连接的行。
此外,您可能应该将 f.id 和 g.id 设置为主键,并将 f.id 设置为对 g.id.
的外键引用
我猜你想要这样的 select:
select g.id,g.name,f.count
from go
join f on g.id=f.id
order by g.id
但是如果你真的想在物理上添加一列(count
)到tableg
并按照问题中提到的那样更新它你可以这样做:
alter table g
add column count int
并像这样更新故事 g
:
update table g
set g.count=f.count
from g
join f on g.id=f.id
我正在尝试在 sql 中合并两个 table,但遇到了问题。
table g 看起来像这样
id name
*************************
1234 john
3456 sarah
7890 ben
table f 看起来像这样
id count
**************************
3456 2
1234 7
7890 5
我想在 table g 中插入一列,等于 table f 中的计数,并根据 ID 排序。
我试过使用 INNER JOIN 和 UNION 命令,但它们似乎都不起作用。有谁知道解决方案?这似乎是一个很常见的问题。
SELECT g.id, g.name, f.count
FROM f,g
WHERE f.id = g.id
ORDER BY g.id;
以上是一个简单的连接查询。
在简单的连接查询中,您 select 从两个表中获取所需的信息并将 where 条件设置为等于您要连接的行。
此外,您可能应该将 f.id 和 g.id 设置为主键,并将 f.id 设置为对 g.id.
的外键引用我猜你想要这样的 select:
select g.id,g.name,f.count
from go
join f on g.id=f.id
order by g.id
但是如果你真的想在物理上添加一列(count
)到tableg
并按照问题中提到的那样更新它你可以这样做:
alter table g
add column count int
并像这样更新故事 g
:
update table g
set g.count=f.count
from g
join f on g.id=f.id