Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Помогите составить sql запрос по генерации sku


newjey

Recommended Posts

Добрый день.

Помогите составить sql запрос для внесения всем товарам данных в поле sku по принципу:

$sku = rand ( 1000 , 9999 ) . "-" . $product_id;
$this->db->query("UPDATE " . DB_PREFIX . "product SET sku = '" . $sku . "' WHERE product_id = '" . (int)$product_id . "'");
тоесть надо всем товарам прописать sku ххх-хххх где ххх-это произвольное, рандомное число, а ххх-это id товара.
Спасибо.
Надіслати
Поділитися на інших сайтах


$this->db->query("UPDATE " . DB_PREFIX . "product SET sku = concat(product_id,'_',product_id)");

 

Поскольку product_id уникален, то и sku будет уникальным.

 

Рандом лучше не использовать - чисто случайно возможно дублирование.
Надіслати
Поділитися на інших сайтах


 

$this->db->query("UPDATE " . DB_PREFIX . "product SET sku = concat(product_id,'_',product_id)");
 
Поскольку product_id уникален, то и sku будет уникальным.
 
Рандом лучше не использовать - чисто случайно возможно дублирование.

 

Спасибо, но надо ещё рандомное число, так как id может быть и 1 или 5  и как-то не логично его использовать.

Надіслати
Поділитися на інших сайтах


Тогда так

 

$this->db->query("UPDATE " . DB_PREFIX . "product SET sku = concat(product_id+1000,'_',product_id)");

Выдаёт ошибку 

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '$this->db->query("UPDATE " . DB_PREFIX . "product SET sku = concat(product_id+10' at line 1

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.