如果出现以下情况,甚至不知道从哪里开始。因此,我们非常感谢一些意见。
重要的是要知道语句需要以SELECT开头。
我需要确定记录是否在类别字段中有条目。如果有,我需要将该确切类别分配给与ID匹配的所有列。
ID | Firstname | Lastname | category
--------------------------------------
01 | John | Smith | bike
01 | John | Smith |
01 | John | Smith |
02 | Tobi | Miller |
02 | Tobi | Miller | bike
02 | Tobi | Miller |
03 | Kelly | Schult | car
03 | Kelly | Schult | car
03 | Kelly | Schult |
desired result:
ID | Firstname | Lastname | category
--------------------------------------
01 | John | Smith | bike
01 | John | Smith | bike
01 | John | Smith | bike
02 | Tobi | Miller | bike
02 | Tobi | Miller | bike
02 | Tobi | Miller | bike
03 | Kelly | Schult | car
03 | Kelly | Schult | car
03 | Kelly | Schult | car
答案 0 :(得分:3)
您可以使用窗口功能:
select id, firstname, lastname,
max(category) over (partition by id) as category
from t;
如果您确实想将值存储在表中。 。 。重新考虑。你应该有一个表每个id
只有一行。该行应存储您想要的类别。您可以使用join
来获取值,而不是将相同的值存储在多行中。