mvp.sql 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. CREATE TABLE `mvp_crowd_info_module` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'id',
  3. `crowd_info_id` int(11) DEFAULT NULL COMMENT '用户人群信息id',
  4. `module_name` varchar(50) DEFAULT NULL COMMENT '模块名称',
  5. `default_value` float(5,2) DEFAULT NULL COMMENT '原始数值',
  6. `standard_value` float(5,2) DEFAULT NULL COMMENT '标准值',
  7. `content` varchar(50) DEFAULT NULL COMMENT '内容',
  8. `url` varchar(300) DEFAULT NULL COMMENT '链接',
  9. `remarks` varchar(500) DEFAULT NULL COMMENT '备注',
  10. `status` int(11) DEFAULT '1' COMMENT '1:EFFECTIVE:有效 -1:INVALID:无效',
  11. `created` datetime DEFAULT NULL COMMENT '创建时间',
  12. `creator` varchar(100) DEFAULT NULL COMMENT '创建人',
  13. `updated` datetime DEFAULT NULL COMMENT '修改时间',
  14. `updator` varchar(100) DEFAULT NULL COMMENT '修改人',
  15. PRIMARY KEY (`id`)
  16. ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='模块分数'
  17. # 行为兴趣分值
  18. SELECT
  19. a.id,
  20. a.age_area,
  21. a.city_name,
  22. a.crowd_type,
  23. b.id,
  24. b.behavioral_interest,
  25. b.icon_id,
  26. b.standard_value,
  27. b.creator,
  28. b.created
  29. FROM
  30. mvp_crowd_info a
  31. LEFT JOIN mvp_crowd_info_behavior b ON a.id = b.crowd_info_id
  32. WHERE
  33. a. STATUS = b. STATUS = 1 and a.city_name IN ('上海市', '上海周边')
  34. AND a.age_area IN ('85后', '95后')
  35. # 模块分值
  36. SELECT
  37. a.id,
  38. a.age_area,
  39. a.city_name,
  40. a.crowd_type,
  41. b.id,
  42. b.module_name,
  43. b.standard_value,
  44. b.creator,
  45. b.created
  46. FROM
  47. mvp_crowd_info a
  48. LEFT JOIN mvp_crowd_info_module b ON a.id = b.crowd_info_id
  49. WHERE
  50. a. STATUS = b. STATUS = 1 and a.city_name IN ('上海市', '上海周边')
  51. AND a.age_area IN ('85后', '95后')
  52. # 行为分值删除非85后+上海市
  53. DELETE
  54. FROM
  55. mvp_crowd_info_behavior
  56. WHERE
  57. NOT FIND_IN_SET(
  58. crowd_info_id,
  59. (
  60. SELECT
  61. GROUP_CONCAT(id)
  62. FROM
  63. mvp_crowd_info
  64. WHERE
  65. age_area = '85后'
  66. AND city_name = '上海市'
  67. )
  68. )
  69. # 模块分值删除非85后+上海市
  70. DELETE
  71. FROM
  72. mvp_crowd_info_module
  73. WHERE
  74. NOT FIND_IN_SET(
  75. crowd_info_id,
  76. (
  77. SELECT
  78. GROUP_CONCAT(id)
  79. FROM
  80. mvp_crowd_info
  81. WHERE
  82. age_area = '85后'
  83. AND city_name = '上海市'
  84. )
  85. )