如何在opencart上一次添加多个客户到一个组?

时间:2014-08-06 11:52:07

标签: opencart

有没有办法在opencart上一次将多个客户添加到一个组?将一个接一个地向不同群体添加7500个客户的工作太多了。

1 个答案:

答案 0 :(得分:1)

如果您需要在知道组ID的同时将所有客户添加到一个组,则可以在首选的MySQL管理工具中执行此SQL查询:

INSERT INTO <DB_PREFIX>customer_to_group (customer_id, group_id)
    SELECT customer_id, <GROUP_ID> 
    FROM <DB_PREFIX>customer

<DB_PREFIX>替换为您的数据库表名称前缀(如果您不使用它,则替换为none)。 将<GROUP_ID>替换为您希望分配给客户的组的数字表示。

如果您只想插入少数客户,您可以使用类似的方法 - 但您需要知道他们的ID或电子邮件地址(即可以识别每个客户的一些独特价值):

INSERT INTO <DB_PREFIX>customer_to_group (customer_id, group_id)
    SELECT customer_id, <GROUP_ID> 
    FROM <DB_PREFIX>customer
    WHERE customer_id IN (<ID1>, <ID2>, <ID3>, '<ID...>')

INSERT INTO <DB_PREFIX>customer_to_group (customer_id, group_id)
    SELECT customer_id, <GROUP_ID> 
    FROM <DB_PREFIX>customer
    WHERE email IN ('email@address.1', 'email@address.2', 'email@address.3', '...')

我们假设您只想分配居住在美国的客户(国家/地区ID为<COUNTRY_ID>):

INSERT INTO <DB_PREFIX>customer_to_group (customer_id, group_id)
    SELECT c.customer_id, <GROUP_ID> 
    FROM <DB_PREFIX>customer c
    LEFT JOIN <DB_PREFIX>customer_address ca ON ca.customer_id = c.customer_id
    WHERE ca.country_id = <COUNTRY_ID>
    GROUP BY c.customer_id