[PHP, MySQL] Złączenie zapytań...

Odpowiedz Nowy wątek
2006-07-24 14:02
0

Potrzebuje wyświetlić rekordy z dwóch tabel jako jedne wyniki posortowane chronologincznie wg. data_dodania:

Pytanie do bazy:

$query = mysql_query("SELECT slownik.data_dodania FROM slownik UNION SELECT artykuly.data_dodania FROM artykuly") or DIE(mysql_error());

Wywala błąd: Something is wrong in your syntax obok 'UNION SELECT artykuly.data_dodania FROM artykuly' w linii 1

Ale takie zapytania działają:

$query = mysql_query("SELECT slownik.data_dodania FROM slownik") or DIE(mysql_error());
$query = mysql_query("SELECT artykuly.data_dodania FROM artykuly") or DIE(mysql_error());

czyli 'UNION' coś nie trybi...
Gdzieś czytałem że nie mozna uzywać złaczeń zapytań w funkcji mysql_query() i że dlatego wywala błąd?
Czy to prawda?

Używam:

Krasnal Serv 2.7:
APACHE 1.3.31
php 4.3.9, 5.0.2
MYSQL 3.23.58

Dzięki z góry za podpowiedzi.
Pozdr. Delphi user

Pozostało 580 znaków

2006-07-24 14:08
0

ok znalazłem. Union działa od wersji 4.0.0 .

z dokumentacji:
UNION is available from MySQL 4.0.0 on.

Pozdrawiam.

Pozostało 580 znaków

2006-07-24 14:09
0

A czy oba te pola są takiego samego typu?

Ubiegłeś mnie ;-)


Pozostało 580 znaków

2006-07-24 14:16
0

Ma ktos pomysł na wykonanie tego zadania bez operatora "UNION"?

Pozostało 580 znaków

2006-07-24 17:58
0
delphiuser napisał(a)

Ma ktos pomysł na wykonanie tego zadania bez operatora "UNION"?

A czy data_dodania nie jest przypadkiem polem wspolnym?

Moglbys uzyc inner joina albo outer joina w tym wypadku.

pozdrawiam
johny


You need to learn how to walk
before you can run

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0