Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapytanie WHERE cos %LIKE% IN()
Forum PHP.pl > Forum > Bazy danych > MySQL
glizda1125
Zapytanie 

  1. SELECT * FROM tabele WHERE cos IN (SELECT cos2 FROM tabela2 WHERE cos3 = wartosc ) 




to co jest w nawiasie daje nam jakiś wynik nazwijmy go WYNIK
czyli to zapytanie można porównac do 
  1. SELECT * FROM tabele WHERE cos = WYNIK


I teraz moje pytanie jak zmienić pierwsze zapytanie aby wyciągała wartości z warunkiem 
  1. WHERE cos %LIKE% WYNIK


a nie

  1. WHERE cos = WYNIK


kombinowałem z czymś takim ale nie zadziałało:(

  1. SELECT * FROM tabele WHERE cos IN %LIKE% (SELECT cos2 FROM tabela2 WHERE cos3 = wartosc ) 
nithajasz
Może spróbuj tak:

  1. CREATE VIEW Tab (cos2) AS (SELECT cos2 FROM tabela2 WHERE cos3 = wartosc);
  2. SELECT a.*, b.cos2 FROM tabele AS a, Tab AS b WHERE cos LIKE "%b.cos2%";
  3. DROP VIEW Tab;


Działać raczej nie będzie bo pisane na szybko.
nevt
prawie ci się udało, tylko niepotrzebnie użyłeś IN:
  1. SELECT * FROM `tabele` WHERE `cos` LIKE (SELECT `cos2` FROM `tabela2` WHERE `cos3` = 'wartosc');
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.