Kemas kini lajur contact_id setiap baris dengan from_address yang sama kepada nilai maksimum
P粉835428659
P粉835428659 2023-09-16 17:40:45
0
1
613

Saya mempunyai pangkalan data dengan jadual yang dipanggil kenalan yang mengandungi senarai pelanggan dan jadual yang dipanggil helpdesk_tickets di mana setiap baris mewakili tiket meja bantuan daripada pelanggan.

Perisian mengalami ralat dan mencipta pendua dalam jadual kenalan (semua data kecuali id ​​adalah sama). Sebenarnya, dalam jadual helpdesk_tickets表中,一些电子邮件被分配给不同的客户id。我希望将所有具有相同电子邮件地址的工单分配给最新的client_id。这给我每个工单的最新client_id(基于helpdesk_tickets中的from_email, beberapa e-mel diberikan kepada id pelanggan yang berbeza. Saya mahu semua tiket dengan alamat e-mel yang sama diberikan kepada client_id yang terkini. Ini memberi saya client_id terbaharu untuk setiap tiket (berdasarkan lajur from_email dalam

):

SELECT from_address, MAX(contact_id) as a FROM helpdesk_tickets GROUP BY from_address HAVING COUNT(contact_id)>1;
from_addressKini saya perlu mengemas kini setiap baris dengan

yang sama kepada nilai maksimum yang dipilih di atas. Bagaimana untuk mencapai 🎜
P粉835428659
P粉835428659

membalas semua(1)
P粉994092873

Anda boleh menggunakan pautan kemas kini di sini:

UPDATE helpdesk_tickets ht1
INNER JOIN
(
    SELECT from_address, MAX(contact_id) AS max_contact_id
    FROM helpdesk_tickets
    GROUP BY from_address
) ht2
    ON ht2.from_address = ht1.from_address
SET
    contact_id = ht2.max_contact_id
WHERE
    contact_id <> ht2.max_contact_id;
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan