Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Szukanie w całej bazie konkretnego ID
neo1986kk
post 5.03.2015, 15:04:56
Post #1





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

Ostrzeżenie: (0%)
-----


W mojej bazie danych, wszystkie ID muszą być unikalne, nie mogą powtórzyć się w żadnej tabeli, więc wymysliłem coś takiego:

  1.  
  2. SELECT t.TABLE_NAME
  3. FROM INFORMATION_SCHEMA.TABLES t
  4. INNER JOIN INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_NAME = c.TABLE_NAME
  5. WHERE t.TABLE_SCHEMA = 'my_crm'
  6. AND c.COLUMN_NAME = 'ID'
  7. GROUP BY t.TABLE_NAME
  8. LIMIT 0 , 30
  9.  



i teraz dopiero php'em mogę sprawdzić


  1. foreach($tabele as $key=>$val){
  2. $q=query('Select ID from '.$val[0]);
  3. }


niestety to trwa zbyt długo i tu nasunęła mi się pewna myśl
Czy jest możliwość wyciągnięcia tego w jednym zapytaniu?

próbowałem w ten sposób:

  1. SELECT t.TABLE_NAME AS tn, c.COLUMN_NAME AS cn
  2. FROM INFORMATION_SCHEMA.TABLES t
  3. INNER JOIN INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_NAME = c.TABLE_NAME
  4. WHERE t.TABLE_SCHEMA = 'my_crm'
  5. AND c.COLUMN_NAME = 'ID'
  6. AND `tn`.`cn`='.$wartość_szukanego_id.'
  7. GROUP BY t.TABLE_NAME
  8. LIMIT 0 , 30


ale SQL nie rozpoznaje `tn`.`cn` jako tabela.nazwa_kolumny sad.gif

Jakieś pomysły?

Ten post edytował neo1986kk 5.03.2015, 15:05:52
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post 5.03.2015, 15:08:59
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




$q=query('Select ID from '.$val[0]).' where ID=szukaneID';
I juz tak dlugo nie bedzie trwalo


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 14.08.2025 - 21:13