经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » MS SQL Server » 查看文章
成语接龙-查找指定层数以内的成语
来源:cnblogs  作者:hold_on_up  时间:2019/7/23 8:43:24  对本文有异议
  1. --从一个成语开始接龙找到另一个成语
  2. DECLARE @cb NVARCHAR(4)= '为所欲为'; --,
  3. --@ce NVARCHAR(15)= '鸡飞狗跳';
  4. WITH cte_get_path
  5. AS ( SELECT word ,
  6. --0 AS is_recycle ,
  7. CAST(word AS NVARCHAR(MAX)) AS cpath ,
  8. 1 AS level ,
  9. first_word ,
  10. last_word
  11. FROM dbo.cy
  12. WHERE word = @cb
  13. UNION ALL
  14. SELECT s.word ,
  15. --CASE WHEN s.word = @ce THEN 1
  16. -- ELSE 0
  17. --END AS is_recycle ,
  18. CAST(p.cpath + '>' + s.word AS NVARCHAR(MAX)) AS cpath ,
  19. p.level + 1 AS level ,
  20. s.first_word ,
  21. s.last_word
  22. FROM dbo.cy AS s
  23. INNER JOIN cte_get_path AS p ON p.last_word = s.first_word
  24. AND CHARINDEX(s.word,
  25. p.cpath) = 0
  26. AND p.level + 1 <= 5--限制成语的个数为5
  27. --AND p.is_recycle = 0
  28. )
  29. SELECT *
  30. FROM cte_get_path
  31. --WHERE cte_get_path.word = @ce;

 

原文链接:http://www.cnblogs.com/felix22/p/11215701.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号