| A 列|B 栏|
| - -| - -|
| A 级|二十六 点 八|
| 乙|二十三 点 五|
| C 语言|二十二 点 五|
| A 级|二十一 点 九|
| 乙|二十三 点 一|
| C 语言|二十九 点 一|
到 这
| A 级|乙|C 语言|
| - -| - -| - -|
| 26.8 |二十三 点 五|二十二 点 五|
| 21.9 |二十三 点 一|二十九 点 一|
问题 : 从 列 A 创建 one-hot - encoded 变量 , 然后 使用 SQL 将 列 B 中 的 相应 值 插入 one-hot - encoded 变量 的 ones ( 1 ) 中 。
我 曾 尝试 在 SQL 中 使用 PIVOT , 但 没有 成功 。
1条答案
按热度按时间yduiuuwa1#
不能 。 在 SQL ( 不仅仅 是 Oracle ) 中 , 结果 集 具有 不 确定 的 排序 , 除非 您 有 一些 数据 允许 您 对 结果 进行 排序 并 确定 哪些
(A,B,C)
三元 组 行 相关 , 否则 不 可能 确定 哪个A
与 哪个B
相关 。例如 , 如果 您 有 范例 数据 :
中 的 每 一 个
然后 道 :
格式
可能 ( 随机 ) 输出 :
| A 级|乙|C 语言|
| - -| - -| - -|
| 21.9 |二十三 点 五|二十九 点 一|
| 26.8 |二十三 点 一|二十二 点 五|
数据 点 最终 出现 在 哪 一 行 是 有 可能
然而 , 如果 数据 集中 有 某些 内容 决定 了 行 :
格式
然后 道 :
格式
输出 :
| A 级|乙|C 语言|
| - -| - -| - -|
| 26.8 |二十三 点 五|二十二 点 五|
| 21.9 |二十三 点 一|二十九 点 一|
你 就会 得到 预期 的 答案 。
您 需要 这些 额外 的 数据 才 能 将 数据 点 关联 到 正确 的 行 中 。
fiddle 的 最 大 值