我正在尝试找到解决此问题的方法,我有两个表
表号 1
| no | ticket |
|----|--------|
| 1 | T1 |
| 2 | T2 |
| 3 | T3 |
表 2
| id | CustomerId |
|----|------------|
| 1 | C1 |
| 2 | C2 |
我需要以下套装
| Tickeid | CustomerId |
|---------|------------|
| T1 | C1 |
| T2 | C2 |
| T3 | C1 |
它基本上与 ticketid 循环,我从两个表上的交叉连接开始但无法获得所需的结果
编辑:1 可能发生的一个变化是表 2 中的值可以有 2 个以上的值,如表 1 中有 T1、T2、T3、T4,表 2 中有 C1、C2、C3,然后我需要 T1C1、T2C2、T3C3, T4C1
再次
如果表 2 只是 C1
那么我只需要T1C1。
根据最近对您的问题所做的更改,我已经完全重写了我的答案。可能有更有效的方法来执行此操作,但这是我的解决方案。如果我误解了您的请求,请告诉我。
您确实需要数字算术(和模数运算符)。
以下内容也处理了
id
和no
值中的差距。提供ROW_NUMBER()
无缝数字-1
并使数字从开始0
(我们需要它,因为% n
运算符给出的结果0
最多为n - 1
):