Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Losowa liczba dla każdego rekordu, Problem z RANDOM() w podzapytaniu
phpion
post 12.02.2010, 11:16:04
Post #1





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Witam,
w triggerze uruchamiam takie zapytanie:

  1. INSERT INTO mails (
  2. recipient_id,
  3. campaign_run_content_id,
  4. instance_id,
  5. run_at
  6. )
  7. SELECT
  8. recipient_id,
  9. NEW.campaign_run_content_id,
  10. (
  11. SELECT
  12. instance_id
  13. FROM
  14. accounts_instances
  15. WHERE
  16. account_id = v_campaign.account_id
  17. ORDER BY
  18. RANDOM()
  19. LIMIT 1
  20. ),
  21. v_campaign.run_at
  22. FROM
  23. groups_recipients
  24. WHERE
  25. group_id = v_campaign.id
  26. ;


Mam drobny problem z losowym przypisaniem wartości do pola instance_id. Zapytanie to przerzuca mi część danych z innej tabeli i dla każdego wiersza chciałbym aby wpisało losowy identyfikator instancji (z tabeli accounts_instances). Aktualnie wszystkie wiersze otrzymują tą samą liczbę. Domyślam się, że chodzi tutaj o jakiś cache. Czy można się tego pozbyć? Co zrobić aby każdy wstawiany rekord otrzymywał losowy numer?

Pozdrawiam,
pion

// Edit:
Na chwilę obecną poradziłem sobie przenosząc podzapytanie do funkcji, ale z czystej ciekawości chciałbym się dowiedzieć czy jest to możliwe bez pisania osobnej funkcji.

Ten post edytował phpion 12.02.2010, 11:30:03
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 12:57