# -*- coding: utf-8 -*-
r"""B46: soi ten_khac/ma_kh trong khach_hang + cách kinh_nghiem đang gắn khách, để khớp tên nhà máy."""
import sqlite3

C = r'C:\Claw-Zalo\CSDLC\CSDLC.db'
c = sqlite3.connect('file:%s?mode=ro' % C.replace('\\', '/'), uri=True)

print('=== 5 dòng kinh_nghiem mẫu (xem khach_hang_id trỏ vào ai) ===')
for r in c.execute('''select k.id, k.khach_hang_id, h.ten, substr(k.chu_de,1,60), substr(k.hien_tuong,1,60), k.ngay
                      from kinh_nghiem k left join khach_hang h on h.id=k.khach_hang_id
                      order by k.id desc limit 5'''):
    print('   id=%-5s kh_id=%-5s %-34s | %s | %s' % (r[0], r[1], str(r[2])[:34], str(r[3])[:60], str(r[5])[:10]))

print()
print('=== 30 khách/nhà máy được gắn nhiều bài học nhất ===')
for r in c.execute('''select h.id, h.ten, count(*) c from kinh_nghiem k left join khach_hang h on h.id=k.khach_hang_id
                      group by h.id order by c desc limit 30'''):
    print('   %-5s %-40s %d bài học' % (r[0], str(r[1])[:40], r[2]))

print()
print('=== TÌM theo ten + ten_khac + ma_kh ===')
CAN = ['Hố Nai', 'HONAI', 'Minh Dương', 'MINH DUONG', 'Mê Kông', 'ME KONG', 'Mekong', 'Thiết Đan', 'Thành Thắng',
       'Thịnh Việt', 'White Wood', 'Wooddy', 'WW', 'Lingin', 'Lingin Bay', 'Đăng Long', 'Phú Khang', 'Z', 'Minh Hưng']
for k in CAN:
    rows = c.execute('''select id, ten, ifnull(ten_khac,'') from khach_hang
                        where ten like ? or ifnull(ten_khac,'') like ? or ifnull(ma_kh,'') like ?''',
                     ('%' + k + '%', '%' + k + '%', '%' + k + '%')).fetchall()
    print('   %-13s -> %s' % (k, rows[:4] if rows else 'KHÔNG THẤY'))
c.close()
