SQL query

Soul_Stealler

Registered
Ако имам таблица от вида

attribute_id (unique), page_id, attribute, content

1 1 title test
2 1 body asdf

3 2 title test
4 2 body asdf

5 3 title test





как мога да комбинирам следното

SELECT page_id FROM table WHERE attribute='title' AND content='test'
SELECT page_id FROM table WHERE attribute='body' AND content='asdf'

и да ми изведе page_id, за които са изпълнени и двете условия ?

Нещо такова ми се върти в главата
SELECT page_id FROM table WHERE `content` LIKE 'test' AND `attribute` LIKE 'title' AND page_id IN (SELECT page_id FROM table WHERE `content` LIKE 'body' AND `attribute` LIKE 'asdf')

Само че тази заявка е мега бавка при повече записи отговарящи на условията.
 
[sql]SELECT page_id FROM table WHERE (attribute='title' AND content='test') OR (attribute='body' AND content='asdf')[/sql]
Така ?
 

Back
Горе