Jump to content
php.lv forumi

SQL guru


Robis

Recommended Posts

Sveiki!

 

Man ir jaauztaisa prieksh manis veel nepieredzeeta SQL proceduura ar SELECT paliidziibu no 4 tabulaam vienlaiciigi, lai atlasiitu datus taa, ka katraa rindaa buutu nepiecieshamie dati salikti taa, ka atbilstu izvadaamai tabulai uz ekraana, tachu, es te esmu sabijies, ka tas ir diezgan nereaali, bet ja kaadam ir pieredze, vareetu kaut ko pateikt varbuut?

zinu tikai SELECT, JOIN, ON, WHERE, ORDER BY

Ko veel mees varam izmantot?

Galvenaa ideja ir taada, ka sheit nevajadzeetu dubleeties datiem, kas it kaa ir vieni un tie pashi, bet atshkjiras viena lauka veertiibas, tas ir, kam tie dati piederoshi... Nu taa, ja kaads saprata...

Link to comment
Share on other sites

OK

 

LIETA IR TAADA!

 

VARBUUT KAADS ZIN, KAA VAR SELECT 2 DIMENSIJAAS?

 

RESPEKTIIVI

 

SELECT KAUT KO NO 4 TABULAAM, BET PAKAARTOT RINDAS VIENAM PARAMETRAM, KAS ARII ATRODAMS SHAJAAS TABULAAS, APMEERAM TAA:

 

Parametrs=1 Parametrs=2 Parametrs=3 utt.

Atslega_1 atbilst_1 atbilst_2 atbilst_3

Atslega_2 atbilst_1 atbilst_2 atbilst_3

Atslega_3 (te nav) atbilst_2 atbilst_3

 

 

Varbuut kaads saprata??? Tas viss ir jaanjem kaa dati no tabulas (kaut vai vienas)

Kaa var shaadi saveidot tiiri uz SQL???

 

[edited]aarkaartiigi nozheelojami ir tas, ka shajaa forumaa nevar salikt textaa atstarpes un tabulaacijas... P.S. augstaak "atbilst_" noziimee, ka peec atsleegas konkreetaas, tas atbilst parametram konkreetam, bet konkretas atslegas citi atbilst atbilst citiem parametriem...

Edited by Robis
Link to comment
Share on other sites

principā iedod to 4ru tabulu struktūras (id un vēl max 1-2 laukus katrai tabulai) un pastāsti, kas ar ko ir saistīts (tabulu lauki, auto increment, primārā atslēga utml).

Ievieto tajās tabulās nelielus testa datus (tā lai viennozīmīgi var saprast, kas ir domāts) un uzraksti vēlamo rezultātu, kādi dati ir jāatsijaa (tb tabulu, kādai tai jāizskatās pēc selekta).

 

Tad var mēģināt tev arī palīdzēt.

 

p.s. tas, ka tu rakstīsi ar LIELAJIEM burtiem, neliks citiem uzskatīt tavu jautājumu par svarīgāku... (p.s. foruma rules: http://php.lv/f/index.php?act=boardrules )

Link to comment
Share on other sites

SELECT * FROM pirma_tabula

RIGHT JOIN otra_tabula ON pirma_tabula.parent=otra_tabula.child AND ...

RIGHT JOIN tresa_tabula ON pirma_tabula.parent=tresa_tabula.child

utt.

WHERE pirma_tabula.id=$_GET['id'] AND ...

 

ar tiem atbilst_

 

tik un tā nesapratu

Link to comment
Share on other sites

[edited]aarkaartiigi nozheelojami ir tas, ka shajaa forumaa nevar salikt textaa atstarpes un tabulaacijas... P.S. augstaak "atbilst_" noziimee, ka peec atsleegas konkreetaas, tas atbilst parametram konkreetam, bet konkretas atslegas citi atbilst atbilst citiem parametriem...

Var salikt. To tekstu, kurā nedrīkst tabus un atstarpes manīt ieliec [ CODE ] [ /CODE ] bbcodē, i viss būs ok!

 

Bet tavu problēmu gan neizprotu, ko selektēt vajag, kā vajag? Kas par selektu 2-dimensijās? Iedod tabulu struktūru (ar dažām rindiņām datu) un kam jābūt rezultātā izselektētam, tad varbūt...

Edited by bubu
Link to comment
Share on other sites

Hei, paldies, ar uzdevumu tiku galaa! :) Tur gan nebija divaas dimensijaas gluzhi, lai gan interesanti, vai kas taads ir iespeejams?

Vienkaarshi ieziimeet no 4 tabulaam es zinu kaa, probleema vairaak gan bija kaa tos datus salikta viena diezgan pasarezhgjiitaa html tabulaa...

Link to comment
Share on other sites

Vajag njemt veeraa ka ne visu vienmeer vajag kombineet ar SQL kverijiem (joiniem, subselectiem utt) ir protams ok un eerti ja visu var labi sarakstiit un arii pienaaciigaa aatrumaa griezhas, no otras puses ir taada jauka lieta kaa masiivi kuros var salaadeet shajaa gadijumaa 4 tabulu vienkaarshus kverijus un stradaat / veidot relaacijas jau ar tiem..

Shis atmaksaaajas par 100% ja nepiecieshama rekursija. Piemeeram kaut kaadi koki vai struktuuras.

 

Atbildot uz jautaajumu par iespeejamo..

Ja ir izveidota kaut cik logjiska datu struktuura tad principaa noselecteet var visu jebkaadaa griezumaa ;) Visproblemaatiskaakais uz doto briidi vareetu buut vieniigais mysql kuram subselecti u.c. lietas veel ir tikai izstraades versijaas, tachu tas nenoziimee ka to visu nevar panaakt citos veidos.. kaut vai paskatoties dazhus piemeeros no http://dev.mysql.com/doc/mysql/en/Rewriting_subqueries.html

Link to comment
Share on other sites

Viens mazs SELECT var atgriezt aarkaartiigi daudz datu, ja datubaazee ir daudz informaacijas... Salikt to visu masiivos noziimee piegruziit datora atminju ljoti...

Masiivos es lieku parasti lietas, par kuraam ir zinaams, ka tur nav paaraak daudz datu... Man arii bija doma salikt visu masiivaa un tad izlikt seciigi visu tabulaa, bet nez vai tas atmaksaatos... Atradu risinaajumu vienkaarshi ar vienu Stored Procedure :)

Link to comment
Share on other sites

×
×
  • Create New...