Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zapytania SQL z "IN"
kacpero1094
post 8.07.2010, 22:09:24
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 22.12.2008

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


Robię nowy skrypt swojej strony i potrzebuję na stronie kategorii, która ma kilka podkategorii wyświetlać wszystkie artykuły: z danej kategorii, i ze wszystkich podkategorii. Zrobiłem w tym celu zapytanie:
  1. SELECT * FROM `arts` WHERE `category` LIKE 'idKategorii' OR `category` LIKE `id` IN (SELECT `id` FROM `category` WHERE `attached` LIKE 'idKategorii')

Proszę o pomoc.


--------------------
kacperkolodziej.pl
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kacpero1094
post 9.07.2010, 08:20:27
Post #2





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 22.12.2008

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


Struktura wygląda tak:
`arts`
`id`
`title`
[dalej kilka pól]
`category`
[i jeszcze kilka innych pól]

`category`
`id`
`name`
`desc`
`attached` - na podstawie tego pola skrypt sprawdza, czy kategoria jest powiązana z jakąś (nadrzędną), czy nie (wartość 0).

Problem polega na tym, że skrypt zwraca pustą wartość, chociaż artykułów jest bardzo dużo.

W phpMyAdmin dałem to polecenie:
  1. SELECT `id` FROM `arts` WHERE (`category` LIKE '%' OR `category` LIKE `id` IN (SELECT `id` FROM `category` WHERE `attached` LIKE '%')) ORDER BY `date` DESC LIMIT 0,10

a on wyrzucił coś takiego:
Kod
#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 'IN (SELECT `id` FROM `category` WHERE `attached` LIKE '%')) ORDER BY `date` DE' at line 1


Ten post edytował kacpero1094 9.07.2010, 08:40:01


--------------------
kacperkolodziej.pl
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 - 20:54