我有一个sql表格,其中cp
和cid
作为其中的两列。 a, av, b, bv, c, cv
是列中的字符串,17, 18
在列cid中。python for for循环的sql选择是什么?
for cp in ['a', 'av', 'b', 'bv', 'c', 'cv']:
for cid in [17,18]:
df= get_dataframes(cp,cid)
ccl = str(cid)
pickle_name = "ccmp/_" + ccl + "_"+ cp + "_recent.pkl"
result_df = pd.Dataframe(df)
我有2循环的喜欢^在蟒蛇。我需要在SQL中复制它们。我不知道如何使用while循环来做到这一点,因为sql没有直接替代python中的for循环。我正在使用MS SQL Server。我只想复制循环。不是我的python脚本所做的一切,它只是我使用我的for循环的示例。对任何混淆抱歉。
get_dataframes
是用cp
和cid
过滤后从一堆其他数据帧中获取数据帧的功能。 for循环的作用是运行cp
和cid
的所有组合的功能,并将它们存储到泡菜中。
我所需要的sql for loop可以给我的cp
和cid
的不同组合。
循环将有一条select语句,给出每个组合的记录(从每个组合的100个记录(即(a,17)(a,18)(av,17)(av,18))开始的2条记录。 。 。
什么我的SQL基本上是应该做的是采取下面的表格,就可以
x y cp cid
aaa bbb a 22
aaa bbb a 27
aaa bbb a 17
aaa bbb av 17
aaa bbb b 22
aaa bbb b 18
aaa bbb bv 18
aaa bbb c 22
aaa bbb cv 18
aaa bbb c 17
aaa bbb d 17
aaa bbb dv 18
aaa bbb j 17
aaa bbb a 22
aaa bbb a 27
aaa bbb a 17
aaa bbb av 17
aaa bbb b 22
aaa bbb b 18
aaa bbb bv 18
aaa bbb c 22
aaa bbb cv 18
aaa bbb c 17
aaa bbb d 17
aaa bbb dv 18
aaa bbb j 17
运行循环,并得到看起来像
x y cp cid
aaa bbb a 17
aaa bbb a 17
aaa bbb av 17
aaa bbb av 17
aaa bbb b 18
aaa bbb b 18
aaa bbb bv 18
aaa bbb bv 18
aaa bbb c 17
aaa bbb c 17
aaa bbb cv 18
aaa bbb cv 18
什么是循环做替换2 CASE语句?如果你解释说你可能会从不认识Python的人那里得到更好的答案(像我:)) –
@JacobH我编辑了我的问题。我希望有所帮助。如果需要,可以提高清晰度。谢谢:) – beginnerdscientist
所以你需要一个'cp'和一个'cid'的所有可能的组合? 'CROSS JOIN'会为你做到这一点。时间短,否则我会发布答案。 – alroc