Topic: paprastas NESTING

tuoj kanors nuzudysiu:))


SELECT * FROM `lentele` WHERE 1


veikia puikiausiai chia viskas elementaru bet kai noriu sukurti virtualia lentele ish gautu duomenu   

SELECT * FROM (
SELECT * FROM `lentele` WHERE 1
)`Vir_lent` WHERE 1


meta klaida ir viskas   gal kas pagelbesit

Re: paprastas NESTING

O ką klaida sako? O kokia MySQL versija?

3 (edited by Laurynas 2008-04-20 11:21:16)

Re: paprastas NESTING

Jei nori sukurti "VIEW", tai nieko neišeis, nes juos kuriant negalima naudoti sub-querių. Turėsi kažkaip apsieiti be jų.

Re: paprastas NESTING

Laurynas wrote:

Jei nori sukurti "VIEW", tai nieko neišeis, nes juos kuriant negalima naudoti sub-querių.

Kodėl negalima? Galima (-;

5 (edited by Laurynas 2008-04-22 08:29:28)

Re: paprastas NESTING

šiek tiek netiksliai parašiau:

Galima naudoti sub-query, kai jis yra yra WHERE dalyje

Negalima, kai jis yra FROM dalyje, kaip buvo pateikta klausime.

Pavyzdys 1:

SELECT `table1`.`a` 
FROM `table1` 
WHERE `table`.`a` IN (
   SELECT `table2`.`b`
   FROM `table2`)

Tačiau tokia užklausa gali būti lėtoka dėl naudojamo IN

Pavyzdys 2:

SELECT `table1`.`a` 
FROM `table1` 
WHERE `table`.`a` = (
   SELECT `table2`.`b`
   FROM `table2`)
   LIMIT 1

Antro pavyzdžio trūkumas yra tame, kad sub-queris turi gražinti tik vieną eilutę, kad užklausa būtų veikianti.

Bet kuriuo atveju, sub-querius VIEWe naudoti nepatogu, ir geriau pabandyti apsieiti be jų.