-- 2014-12-20 -- 1. initialization: set values to zero (necessary for courses without corresonding students, e.g. no yoyaku in even_contacts) UPDATE smsevent_sub3, smsevent_sub1 SET shinki_toroku_no=0, keizoku_toroku_no=0, shinki_yoyaku_no=0, keizoku_yoyaku_no=0, sai_toroku_no=0, sai_yoyaku_no=0 WHERE id_sub1=id_sub3 AND nenki IN ('201501', '201504') -- 2. set each ninzu by getting values from event_contacts UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET shinki_yoyaku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET keizoku_yoyaku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku=3 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET sai_yoyaku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET shinki_toroku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET keizoku_toroku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku=3 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET sai_toroku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 ; -- 3. confirmation -- total toroku numbers using shinki/keizoku SELECT event_contacts_count, teiin, nenki, (shinki_yoyaku_no + keizoku_yoyaku_no + shinki_toroku_no + keizoku_toroku_no) AS shinki_keizoku_c, (dansei_toroku_no + josei_toroku_no + dansei_yoyaku_no+ josei_yoyaku_no) as danjo_c, id_sub1 AS course_id, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, dansei_toroku_no, josei_toroku_no, dansei_yoyaku_no, josei_yoyaku_no, sai_toroku_no, sai_yoyaku_no, tein_type, teiin_sub1, teiin_sub2 FROM smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS event_contacts_count, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') AND event_contact_status IN ('1', '2') GROUP BY event_id ) AS my_ec WHERE smsevent_sub1.nenki IN ('201501', '201504') AND smsevent_sub1.id_sub1=smsevent_sub3.id_sub3 AND my_ec.event_id=id_sub1 AND event_contacts_count!=(shinki_yoyaku_no + keizoku_yoyaku_no + shinki_toroku_no + keizoku_toroku_no) SELECT event_contacts_count, teiin, nenki, (shinki_yoyaku_no + keizoku_yoyaku_no + shinki_toroku_no + keizoku_toroku_no) AS shinki_keizoku_c, (dansei_toroku_no + josei_toroku_no + dansei_yoyaku_no+ josei_yoyaku_no) as danjo_c, id_sub1 AS course_id, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, dansei_toroku_no, josei_toroku_no, dansei_yoyaku_no, josei_yoyaku_no, sai_toroku_no, sai_yoyaku_no, tein_type, teiin_sub1, teiin_sub2 FROM smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS event_contacts_count, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') AND event_contact_status IN ('1', '2') GROUP BY event_id ) AS my_ec WHERE smsevent_sub1.nenki IN ('201501', '201504') AND smsevent_sub1.id_sub1=smsevent_sub3.id_sub3 AND my_ec.event_id=id_sub1 AND event_contacts_count!=(dansei_toroku_no + josei_toroku_no + dansei_yoyaku_no+ josei_yoyaku_no) -- total toroku numbers using dansei/josei if the tein_type of the course is dansei/josei SELECT (dansei_toroku_no + josei_toroku_no + dansei_yoyaku_no+ josei_yoyaku_no) AS total_danjo, (shinki_yoyaku_no + keizoku_yoyaku_no + shinki_toroku_no + keizoku_toroku_no) AS total_toroku, id_sub1 AS course_id, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, dansei_toroku_no, josei_toroku_no, dansei_yoyaku_no, josei_yoyaku_no, sai_toroku_no, sai_yoyaku_no, teiin, tein_type, teiin_sub1, teiin_sub2 FROM smsevent_sub1, smsevent_sub3 WHERE smsevent_sub1.nenki IN ('201501', '201504') AND smsevent_sub1.id_sub1=smsevent_sub3.id_sub3 AND tein_type=2 AND (dansei_toroku_no + josei_toroku_no + dansei_yoyaku_no+ josei_yoyaku_no)!=(shinki_yoyaku_no + keizoku_yoyaku_no + shinki_toroku_no + keizoku_toroku_no) ('1574b0ac-e2a3-ce7a-ca27-546fff35df13','1a610b9a-29e0-ea7f-4b18-54640cc7ef3a','35160258-ceee-da52-dec2-5449f1066168','377dcfed-d6d8-f2ef-f256-54549240435e','3884f3e8-5724-5bb0-080d-5460332cba13','3a2cf624-5036-a16a-f7fa-545450ded73c', '3b8fa25d-7598-7e35-7e29-54522c487e5e','3c61f04d-a062-f60b-f070-54562116e7b8','42220fe0-dd5c-d946-404b-54605b17cb3a','4c581bf5-c175-28f0-480f-5450ac3852c0','61a2a54b-abd3-a386-9c81-5454b4323f73','799a60e0-2ea7-e6e0-6dfa-543602a0c65d', '89073f69-54e6-54ac-5d5b-546adfa122e1','9e145ede-d40b-d189-8bd0-5459d09d182a','a15ab413-40d9-339a-fd85-5459addae10f','a69ed293-018b-c412-11e5-54759314af59','ad2043da-a686-f3ed-ddeb-545dd5e3f3ae','b36e2a79-1e4f-d6b8-0486-54547b00714c', 'b6f6b874-8ae9-e3ce-f58f-54606e5cd090','bc500f33-4f19-5124-ede9-54599f911eec','c3eba7f2-ed5c-ac87-e21b-5454b1abd6a6','c80de5d6-8501-b5a6-d8a1-54609c69cfb0','cf55e7f4-1f88-a06e-c16d-544739da16de','d6db747a-4170-5c6d-1f5b-545df5aef436', 'da48aae0-eb1a-7ae6-ceb2-5461830a6553','e5ce875a-5bee-6400-ffbe-54630c38d313','ec8495ea-f597-8760-6b02-5436012539ac','f7ed0ecd-b676-2919-1889-5453615c6d2f') -- yoyaku dansei SELECT count(contact_id) FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contacts.deleted=0 AND contacts.gender='male' AND event_contact_status=1 AND event_id='1af8dd29-11e5-ee12-9868-54635ed2210f'; -- nyukin dansei SELECT count(contact_id) FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contacts.deleted=0 AND contacts.gender='male' AND event_contact_status=1 AND event_id='1af8dd29-11e5-ee12-9868-54635ed2210f'; UPDATE smsevent_sub1, smsevent_sub3, ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND smsevent_sub1.nenki IN ('201501', '201504') GROUP BY event_id ) AS my_ec SET shinki_yoyaku_no=mycount WHERE nenki IN ('201501', '201504') AND id_sub1=id_sub3 AND my_ec.event_id=id_sub1 AND smsevent_sub1.id_sub1 IN ('1574b0ac-e2a3-ce7a-ca27-546fff35df13','1a610b9a-29e0-ea7f-4b18-54640cc7ef3a','35160258-ceee-da52-dec2-5449f1066168','377dcfed-d6d8-f2ef-f256-54549240435e','3884f3e8-5724-5bb0-080d-5460332cba13','3a2cf624-5036-a16a-f7fa-545450ded73c', '3b8fa25d-7598-7e35-7e29-54522c487e5e','3c61f04d-a062-f60b-f070-54562116e7b8','42220fe0-dd5c-d946-404b-54605b17cb3a','4c581bf5-c175-28f0-480f-5450ac3852c0','61a2a54b-abd3-a386-9c81-5454b4323f73','799a60e0-2ea7-e6e0-6dfa-543602a0c65d', '89073f69-54e6-54ac-5d5b-546adfa122e1','9e145ede-d40b-d189-8bd0-5459d09d182a','a15ab413-40d9-339a-fd85-5459addae10f','a69ed293-018b-c412-11e5-54759314af59','ad2043da-a686-f3ed-ddeb-545dd5e3f3ae','b36e2a79-1e4f-d6b8-0486-54547b00714c', 'b6f6b874-8ae9-e3ce-f58f-54606e5cd090','bc500f33-4f19-5124-ede9-54599f911eec','c3eba7f2-ed5c-ac87-e21b-5454b1abd6a6','c80de5d6-8501-b5a6-d8a1-54609c69cfb0','cf55e7f4-1f88-a06e-c16d-544739da16de','d6db747a-4170-5c6d-1f5b-545df5aef436', 'da48aae0-eb1a-7ae6-ceb2-5461830a6553','e5ce875a-5bee-6400-ffbe-54630c38d313','ec8495ea-f597-8760-6b02-5436012539ac','f7ed0ecd-b676-2919-1889-5453615c6d2f'); -- yoyaku numbers fix UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET shinki_yoyaku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET keizoku_yoyaku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contact_status=1 AND event_contacts.deleted=0 AND contacts.gender='male' AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET dansei_yoyaku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contact_status=1 AND event_contacts.deleted=0 AND contacts.gender!='male' AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET josei_yoyaku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; -- nyukin numbers fix UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET shinki_toroku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET keizoku_toroku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contact_status=2 AND event_contacts.deleted=0 AND contacts.gender='male' AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET dansei_toroku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts WHERE event_contacts.contact_id=contacts.id AND event_contact_status=2 AND event_contacts.deleted=0 AND contacts.gender!='male' AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET josei_toroku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' ; UPDATE smsevent_sub3 LEFT JOIN (SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND event_id='496a3d05-239e-100b-6819-54c303ef3fca') AS my_ec ON my_ec.event_id=id_sub3 SET keizoku_yoyaku_no=IFNULL(mycount,0) WHERE id_sub3='496a3d05-239e-100b-6819-54c303ef3fca' -- 2015-04-28 detailed check for each individual stats number -- shinki/keizoku SELECT mycount, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND nenki='201504' AND tein_type=1 GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND shinki_yoyaku_no!=mycount SELECT mycount, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=1 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND nenki='201504' AND tein_type=1 GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND keizoku_yoyaku_no!=mycount SELECT mycount, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku IN ('1', '3') AND event_contacts.deleted=0 AND nenki='201504' AND tein_type=1 GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND shinki_toroku_no!=mycount SELECT mycount, shinki_toroku_no, keizoku_toroku_no, shinki_yoyaku_no, keizoku_yoyaku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contact_status=2 AND ec_shinki_keizoku=2 AND event_contacts.deleted=0 AND nenki='201504' AND tein_type=1 GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND keizoku_toroku_no!=mycount -- dansei/josei SELECT mycount, dansei_yoyaku_no, josei_yoyaku_no, dansei_toroku_no, josei_toroku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.contact_id=contacts.id AND event_contact_status=1 AND event_contacts.deleted=0 AND contacts.gender='male' AND nenki='201504' GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND dansei_yoyaku_no!=mycount SELECT mycount, dansei_yoyaku_no, josei_yoyaku_no, dansei_toroku_no, josei_toroku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.contact_id=contacts.id AND event_contact_status=1 AND event_contacts.deleted=0 AND contacts.gender='female' AND nenki='201504' GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND josei_yoyaku_no!=mycount SELECT mycount, dansei_yoyaku_no, josei_yoyaku_no, dansei_toroku_no, josei_toroku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.contact_id=contacts.id AND event_contact_status=2 AND event_contacts.deleted=0 AND contacts.gender='male' AND nenki='201504' GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND dansei_toroku_no!=mycount SELECT mycount, dansei_yoyaku_no, josei_yoyaku_no, dansei_toroku_no, josei_toroku_no, id_sub3 FROM smsevent_sub3 INNER JOIN ( SELECT count(contact_id) AS mycount, event_id FROM event_contacts, contacts, smsevent_sub1 WHERE event_contacts.event_id=smsevent_sub1.id_sub1 AND event_contacts.contact_id=contacts.id AND event_contact_status=2 AND event_contacts.deleted=0 AND contacts.gender='female' AND nenki='201504' GROUP BY event_id ) AS my_ec ON my_ec.event_id=id_sub3 AND josei_toroku_no!=mycount INSERT INTO `sms_salesgroup` (`id`, `name`, `event_id`, `contact_id`, `account_id`, `type_id`, `occurences`, `occurences_hour`, `deleted`, `date_entered`, `date_modified`, `sell_date`, `modified_user_id`, `created_by`, `basic_fee`, `unit_type`, `unit_no`, `period`, `period_no`, `due_to`, `description`, `applied_contact`, `discount_percentage`, `discount_price`, `salesno`, `bank_account`, `hakkoubi`, `receipt_hakkoubi`, `seikyusaki`, `tantosha`, `item`, `school_code`, `internal_yoyaku_id`, `daihyo_id`, `uketsuke_bango`, `inshizei_umu`) VALUES ('4290028a-1b1b-25af-c098-553a1f74c071', NULL, NULL, 'e57779c7-5bf6-b57e-5b34-553a1f10c7cb', NULL, NULL, 1, 1, 0, '2015-04-24 19:47:22', '2015-04-24 19:47:22', '0000-00-00 00:00:00', 'ed2ace73-7968-b0a6-82e1-5444f3d3f8d5', 'ed2ace73-7968-b0a6-82e1-5444f3d3f8d5', 0, NULL, 0, 0, 0, '0', NULL, 0, 0, NULL, '2800001192', NULL, NULL, NULL, NULL, NULL, NULL, NULL, '918e3b68-ea5b-2efb-0eb5-553a20c15c6e', 'e57779c7-5bf6-b57e-5b34-553a1f10c7cb', 'T_20150424a', 0);