42. 德州扑克起手牌-最强起手牌KK+
数据分析师玩德州扑克的同学应该不在少数。
涉及快速的概率计算、人性洞察、尔虞我诈,这不跟数据分析师工作很像吗哈哈?
现在就来通过起手牌来练习、巩固字符串相关函数吧!
玩德州,最让人激动的4种牌型,暂且命名为心跳牌。
AA、KK、AKs(s代表同色,如A♥️K♥️)、AKo(o代表不同色,如A♠️K♦️)
请找到所有心跳牌,输出所有字段。
考点
- substr('我是陈刀仔',3,3) --> '陈刀仔'
- left('w我是陈刀仔',2)-->'w我'
- right('www.sqlintern.com',4)-->'.com'
hand_permutations,
起手牌的排列组合表
id | card1 | card2 |
---|---|---|
1 | 2♠ | 3♠ |
2 | 2♠ | 4♠ |
…… | …… | …… |
2648 | A♣ | 9♣ |
2649 | A♣ | 10♣ |
2650 | A♣ | J♣ |
2651 | A♣ | Q♣ |
2652 | A♣ | K♣ |
按照id升序排列。
id | card1 | card2 |
---|---|---|
573 | K♠ | A♠ |
585 | K♠ | K♥ |
586 | K♠ | A♥ |
598 | K♠ | K♦ |
599 | K♠ | A♦ |
611 | K♠ | K♣ |
点击下方空白区域即可查看参考答案
/* 查询所有 KK 及以上的起手牌 */
select *
from hand_permutations
where
/* 匹配 AA */
concat(card1, card2) like '%A%A%' or
/* 匹配 AKs 和 AKo */
concat(card1, card2) like '%A%K%' or
/* 匹配 KK */
concat(card1, card2) like '%K%K%' or
/* 匹配 KA(即 AK) */
concat(card1, card2) like '%K%A%'
/* 按 id 排序 */
order by id;
MySQL 8.0
xxxxxxxxxx
2
select * from hand_permutations limit 5;