MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рд╡реИрдпрдХреНрддрд┐рдХрд░рдгред рджрд┐рд▓рдЪрд╕реНрдк рддрдХрдиреАрдХ

рдЫрд╡рд┐

рдЬрд┐рд╕ рдХрдВрдкрдиреА рдореЗрдВ рдореИрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рд╡рд╣рд╛рдВ рд╣рдо рдПрдХ рдбрд┐рдкрд╛рд░реНрд╕реЗрд▓рд╛рдЗрдЬреНрдб рдмреЗрд╕ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдкреНрд░реЛрдбрдХреНрд╢рди-рдП рдХреЗ рд╕рд╛рде рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд▓рд╣рд╛рд▓ рдЗрд╕рдХреА рдХреБрд▓ рдорд╛рддреНрд░рд╛ рд▓рдЧрднрдЧ 30 рдЬреАрдмреА рд╣реИред рдУрдмреНрд╕реЗрдХреЗрд╢рди рд░реВрдмреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рдЧрднрдЧ 6 рдШрдВрдЯреЗ рд▓рдЧреЗред рдЗрд╕ рд╕рднреА рдХреЛ рдПрдХ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдкреБрдирдГ рд▓рд┐рдЦрдХрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рддреЗрдЬреА рд▓рд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдордирд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ ... рдХрд╛рд╢, рдЖрд╣ред

рддрдм рдореИрдВрдиреЗ рд╕реЛрдЪрд╛: рдХреНрдпрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЕрдкрдбреЗрдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЕрдзрд┐рдХрддрдо рдЧрддрд┐ рджреЗрдирд╛, рдкреВрд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ (рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рддрд╛рд▓рд┐рдХрд╛) рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ? рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рд╕реВрдЪреА рд╕реЗ рдЕрджреНрд╡рд┐рддреАрдп рдФрд░ рдХреБрдЫ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдореВрд▓реНрдпред


рдпрд╣ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдирд┐рдХрд▓рд╛ред рдереЛрдбрд╝рд╛ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде, рд╕рдорд╛рдзрд╛рди рдХрд╕реНрдЯрдо рдЪрд░, рдПрдХ рдЫрджреНрдо рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЬрдирд░реЗрдЯрд░ рдФрд░ рдПрдХ рдХреЗрд╕ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЗ рд╕рд╛рде рдЖрдпрд╛ред

рдиреАрдЪреЗ рдХреБрдЫ рдХреЛрдб рдФрд░ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ:

рдЦреЗрддреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рд╣реЛрдиреЗ рджреЗрдВ:
first_name
рд▓рд┐рдВрдЧ
last_name
ADDRESS_1
address_2
home_phone
рдЬрдиреНрдорддрд┐рдерд┐
рдПрд╕рдПрд╕рдПрди
рдкрд╛рд╕рд╡рд░реНрдб

рд╕реНрдердЧрди рдХреЗ рдмрд╛рдж рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдкрд╣рд▓рд╛_рдирд╛рдо: рдорд╣рд┐рд▓рд╛рдУрдВ рдореЗрдВ - рдкреЗрдЯреНрд░реАрд╕рд┐рдпрд╛, рдЯреЗрд▓рд░, рд╕реБрд╕рд╛рди, рд▓рд┐рд╕рд╛, рд▓рд┐рдВрдбрд╛, рд╕реИрдВрдбреНрд░рд╛, рдХреИрд░реЛрд▓, рдбреЗрдмрд░рд╛, рдЯреЗрд░реЗрд╕рд╛, рд░реЗрдмреЗрдХрд╛, рдбрд╛рдпрдирд╛, рд╡реЗрд░реЛрдирд┐рдХрд╛, рд╣реЗрд▓реЗрди, рдПрд▓реЗрдХреНрдЬреЗрдВрдбреНрд░рд╛, рд╕реНрд╡реЗрддрд▓рд╛рдирд╛, рдПрд▓реЛрдирд╛, рдорд░реАрдирд╛, рдорд┐рд▓рд╛, рдУрд▓реНрдЧрд╛, рд╡рд╛рд╕рд┐рд▓рд┐рд╕рд╛, рдорд╛рд░реНрддрд╛
рдкреБрд░реБрд╖ - рдбреЗрд╡рд┐рдб, рдЬреЙрди, рд░реЙрдмрд░реНрдЯ, рд╕реНрдЯреАрд╡рди, рд╡рд┐рд▓рд┐рдпрдо, рдорд╛рд░реНрдХ, рдереЙрдорд╕, рдорд╛рдЗрдХрд▓, рд░рд┐рдЪрд░реНрдб, рдХреЗрд╡рд┐рди, рдбреЛрдирд╛рд▓реНрдб, рдПрдВрдбреНрд░рдпреВ, рд░реБрд╕рд▓рд╛рди, рдпреВрдЬреАрди, рд╕рд░реНрдЧреЗрдИ, рдПрд▓реЗрдХреНрдЬреЗрдВрдбрд░, рдпреВрд░рд╛, рдЗрд╡рд╛рди, рдбреИрдирд┐рдпрд▓
рд▓рд┐рдВрдЧ: рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ
last_name: рдЬреЙрдирд╕рди, рдПрдВрдбрд░рд╕рди, рд░реАрдб, рдПрд░рд┐рдХрд╕рди, рдлреНрд░реИрдВрдХ, рд▓реБрдХрд╛рд╕, рдЬреЗрдирдХрд┐рдиреНрд╕, рд╡реЙрдЯрд╕рди, рдореЙрд░реНрдЧрди, рдХрд┐рдо, рдХреЛрд╡рд▓рд┐рдирди, рдХреЛрдиреЛрд╡рд▓реЛрд╡, рдЯреЗрд░реЗрд╢рдХреЛ, рдЙрд░рдЪрд┐рдХ, рдХреБрд▓рд╢реЛрд╡, рдХрд┐рд╕рд▓реАрдХреЛрд╡, рдЕрд░реЗрд╢рдирд┐рдХ, рдкреЗрдХрд░, рдореИрдЯреНрд░реЛрд╕рд┐рди, рдЧреИрд▓рд╛рдШрд░
рдкрддрд╛ 1: 123 рдореЗрди рд╕реНрдЯреНрд░реАрдЯ
address_2: рдпрджрд┐ рдореВрд▓ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрддреНрддрд┐ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ NULL рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдкрддрд╛ 123 рдореБрдЦреНрдп рд╕рдбрд╝рдХ рд╣реИ
home_phone: рдпрджрд┐ рдореВрд▓ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрддреНрддрд┐ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ NULL рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдлрд╝реЛрди 111-111-2222
рдЬрдиреНрдорддрд┐рдерд┐: рдЬрдиреНрдо рдХрд╛ рд╡рд░реНрд╖ рд╕рдорд╛рди рдЫреЛрдбрд╝реЗрдВ, рдФрд░ рддрд┐рдерд┐ рдФрд░ рдорд╣реАрдирд╛ рдмрджрд▓реЗрдВ
ssn: with 30 тАЩрд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдиреМ-рд╡рд░реНрдг рдорд╛рди рдЕрджреНрд╡рд┐рддреАрдп
рдкрд╛рд╕рд╡рд░реНрдб: NULL

рд╕рдорд╛рдзрд╛рди:
SET @rand = 276821; UPDATE users SET first_name= CASE WHEN gender='F' || gender='f' THEN ELT(FLOOR(1+RAND() * 21), 'Patricia', 'Taylor', 'Susan', 'Lisa', 'Linda', 'Sandra', 'Carol', 'Debra', 'Teresa', 'Rebecca', 'Diana', 'Veronika', 'Helen', 'Alexandra', 'Svetlana', 'Elona', 'Marina', 'Mila', 'Olga', 'Vasilisa', 'Marta') ELSE ELT(FLOOR(1+RAND() * 19), 'David', 'John', 'Robert', 'Steven', 'William', 'Mark', 'Thomas', 'Michael', 'Richard', 'Kevin', 'Donald', 'Andrew', 'Ruslan', 'Eugene', 'Sergey', 'Alexandr', 'Yura', 'Ivan', 'Daniel') END, last_name = ELT(FLOOR(1+RAND() * 20), 'Johnson', 'Anderson', 'Reed', 'Erickson', 'Frank', 'Lucas', 'Jenkins', 'Watson', 'Morgan', 'Kim', 'Kovalinen', 'Konovalov', 'Tereshko', 'Urchik', 'Kuleshov', 'Kisliakov', 'Areshnik', 'Pekar', 'Matroskin', 'Gallagher'), address_1 = '123 Main Street', address_2 = CASE WHEN address_2 is not null THEN 'Apt. 14' ELSE null END, home_phone = CASE WHEN home_phone is not null THEN '111-111-2222' ELSE null END, birthdate = CASE WHEN birthdate is not null THEN MAKEDATE(YEAR(birthdate),FLOOR(RAND()*365)) ELSE null END, ssn = CASE WHEN ((@rand + 609673) % 1048576 <> 0) && ((@rand + 609673) % 1048576 <> 1000000) THEN CONCAT('30',LPAD(@rand:=(@rand + 609673) % 1048576,7,'0')) ELSE CONCAT('30',LPAD(@rand:=(@rand + 609673*2) % 1048576,7,'0')) END, password = null; 


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХреЛрдб рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк ELT (FLOOR (1 + RAND () * 21), ...) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕реВрдЪреА рд╕реЗ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ FLOOR (1 + RAND () * 21) 1 рд╕реЗ рд▓реЗрдХрд░ рд╕реАрдорд╛ рдореЗрдВ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдорд╛рди рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВред 21. рдИрдПрд▓рдЯреА - рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рд╕рд╛рде рдЙрдкрдпреБрдХреНрдд рдирд╛рд▓реА рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИред

CASE рдЖрдкрдХреЛ рд▓рд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдкреБрд░реБрд╖ рдФрд░ рдорд╣рд┐рд▓рд╛ рдирд╛рдореЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреБрдирдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЪрд╛рд░ CASE, IF, IFNULL (), NULLIF () рдкреНрд░рдЧрддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдРрд╕реЗ рдХрд╛рд░реНрдп рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдЕрд▓рдЧ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЬреЛ рдЕрднреА рднреА рдЙрд▓реНрд▓реЗрдЦ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ, рд╡рд╣ рдЕрджреНрд╡рд┐рддреАрдп рдореВрд▓реНрдп рдХрд╛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдореВрд▓реНрдп рдЬрдирд░реЗрдЯрд░ рд╣реИред рдПрдХ рдкреНрд░рдореБрдЦ рд╕рдВрдЦреНрдпрд╛ (276821) рдХреЛ рдЬрдирд░реЗрдЯрд░ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рд░реИрдВрдб рдХреЛ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рди рд╕реАрдзреЗ CASE рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: rand : = ( rand + 609673 * 2)% 1048576ред рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ CONCAT ('30', LPAD ( рд░реИрдВрдб , 7, '0')) рд░реИрдВрдб рд╡реИрд▓реНрдпреВ рдХрд╛ рдЕрдВрддрд┐рдо рд░реВрдк рдмрдирд╛рддрд╛ рд╣реИред

рдирд┐рд╖реНрдХрд░реНрд╖:
рдЖрдзрд╛рд░ рдХрд╛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдХреЗ рд╣рдордиреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд┐рдпрд╛ рд╣реИ?
1) рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЧрддрд┐ 6 рдШрдВрдЯреЗ рд╕реЗ 4 рдорд┐рдирдЯ рддрдХ рдХрдо рд╣реЛ рдЧрдИ рдереАред
2) рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
3) рдХрд╛рдо рдХрд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ (рдЬрдЯрд┐рд▓ рдирд╣реАрдВ) рддрд░реНрдХ рдФрд░ рд╕рднреА рдХреЛрдб рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

Source: https://habr.com/ru/post/In132869/


All Articles