我有以下条目:
first_col, second_col
'john' , 'chips'
'john' , 'candy bars'
'luke' , 'pop corn'
这样first_col的某些值可以(但不需要)second_col中的多个值(并且多重性不是常量)。我想检索与first_col关联的second_col的唯一值,它应该从现有的可能性中随机选择。例如,对于'John',我会随机选择'筹码'和'糖果棒'。
我正在使用Teradata,如果有帮助的话。
感谢。
答案 0 :(得分:1)
SELECT first_col,
MAX(second_col) KEEP (DENSE_RANK FIRST ORDER BY num) as rand_second_col
FROM
(SELECT first_col, second_col,dbms_random.value() as num
FROM table) tmp
GROUP BY first_col
祝你好运
答案 1 :(得分:0)
你可以尝试这个
SELECT [col1],min([col2]) as col2,NEWID()
FROM [testtable] group by [col1] order by NEWID()
我已经制作了一张包含以下数据的表格并且可以正常工作
col1 col2
john chips
john candy bars
luke pop corn
john ice
,输出
col1 col2 (No column name)
luke pop corn E8CCD6A2-27A8-4728-B16F-2B1EFEAFA8A1
john candy bars D135E1E0-5193-41F1-A5F9-B55F68CF6156
答案 2 :(得分:-1)
select * from tablename
sample 10;
我不知道幕后的sample 10
是什么。有趣的是,每次数据都不同,并返回了许多不同的值。