Jump to content
php.lv forumi

Select uz diviem date tipa laukiem


reiniger

Recommended Posts

Sveiki.

 

Man ir interesanta lieta. Ir iespēja ka ir divi date tipu lauki. var būt ka viens ir ievadits un otras nav un otrādi. un var būt ka abi ievadīti.

 

id  |   date_1    	|  	date_2
1  	2012-06-01
2                          	2012-06-02
3  	2012-06-03  	2012-06-05

Tie lauki nav domāti no līdz!

 

Mans pašreizējais select mani pieviļ :)

SELECT d.*
FROM table AS d
WHERE (d.date_1 >= '2012-06-01' OR d.date_2 >= '2012-06-01' )  AND (d.date_1 <= '2012-06-03' OR d.date_2 <= '2012-06-03' )
GROUP by d.id

Vajadzētu izdrukāties ID 1,2,3

 

Var kāds ieteikt kā pareizi taisīt select uz diviem datu laukiem.

 

 

e-remit Labojumi lai visi saprastu ka es ar roku veidojot esmu nokļudijies, it kā ideju tā pat nevarētu saprast

Edited by reiniger
Link to comment
Share on other sites

ko tu tur vispār gribi atlasīt?

1) 1. rinda neatlasīsies, jo date_1 ir 2011., nevis 2012. gads;

2) "ORDER by d.date" - nav tādas kolonnas `date`.

 

Ja izlabo šīs divas lietas, tad tiek atlasītas 3 pilnas rindas, nevis tikai ID.

Link to comment
Share on other sites

Tiešām e-remit un y2ok Jūsu ieteikumi tiešam atrisināja manu problēmu. Kā tad. (man slikts garīgais)

 

Domāju ka lietas būtiba ir skaidra ko vēlos panākt.

 

ņemšu vērā tikai tos postus kuri tiešām piedāvā risinājumu, nevis atrod vardu kļūdas un punktu kļūdas.

 

PS: sorry par asumiem! Man tiešām slikts garīgais, lai lasītu postus kuri veidoti, lai tikai butu kaut kas uzrakstīts.

Edited by reiniger
Link to comment
Share on other sites

Vispār labākais risinājums ir sql kveriju veidot tā, lai labā un kreisā puse saskanētu pēc savas būtības pie where nosacījuma, kas nedaudz paātrina darbību, lai datumu salīdzināšana kā arī SELECT * neizmantotu nepareizus indeksus ar to es gribēju pateikt, ka šis posts ir tīri tāpēc, ka tu musm visiem svinģi paziņoji, ko tu ņemsi vērā un ko nē.

Link to comment
Share on other sites

nedaudz jau Offtopic.

 

Galīgi nebija garīgais un pieraksta acimredzamas kļūdiņas, kas speciālistam tā pat būtu skaidrs no mana apskaidrotā piemēra.

Tas tā pat ka tavu postu lasot es tagad piekasītos vārdam "svinģi" un kamēr tu to neizlabosi es nemaz nepalīdzēšu tev atrisināt problēmu. Lai arī nezinātu kā tev palīdzēt vienkārši uzrakstītu, lai izlabo un būšu ieguvis vienu +1 pie post count un baigi iesaistījies forumā, kas man kr*nu pagarinās pa 2 cm.

 

PS: peace

Link to comment
Share on other sites

Es atvainojos iepriekšējo foruma dalībnieku vietā, ka viņi nebučoja tavas kājas, jo tas taču ir liels gods risināt TAVAS problēmas un kļūdas! Aicinu arī pārējos, līdz ar nākamo reiniger postu, mest pie malas visus esošos darbus un iesaistīties viņa problēmu risināšanā! Pirms tam gan būtu vēlams iziet 5 gadu gaišreģu apmācibas kursus, lai uzreiz varētu saprast, kuras kļūdas viņš ielaida visu pārakstot šeit un kuras jau no sākuma eksistē viņa kodā.

Link to comment
Share on other sites

es ar gribu tomēr vēl kaut ko uzrakstīt.

 

Par ko šis forums pārvērtīsies ja katrs pierakstīs kļūdu ko ir atradi tavā postā, nevis skatijies uz problēmu, ko kāds ir jautājis. Ja zini kādu ieteikumu vai pat atrisinājumu uzraksti, bet nedomāju ka šausmīgi noderīgi ir topika aizsācējām uzrakstīt ka izlabo tur kļūdu savā piemēra tabulā, jo tur datums ar punktiem. LOL. Ritigs pāķis ka iedomājies ka datu bāzē šādi glabā date tipa mainīgos un uzrakstot savu query tomēr ir ņēmis vērā ka tabulā datumu atdala ar "-".

 

Protams atzīstu savu kļūdu ka biju kļūdijies un varēja būt tāds variants, ka padomāja, es kā varchar glabāju datumu "2012.06.01" un tad kā date tipa mainīgo mēģināju atlasīt. Šoreiz tomēr man būs jāpiekāpjas. Esmu vainīgs.

 

Nākamreiz laikam pietiks, lai nepārprastu vienkārši "Man neiet query. Palīdziet? Nevar atlasīt divus datu laikus. Tagad rakstiet man priekša kā to var izdarīt."

Un galvenais laikam šeit ir vert vaļā katru post un kaut ko uzrakstit ja pat īsti nezini par ko iet runa tad vismaz atrast kļūdu un uzrakstīt lai krājas posti.

 

PS: melnā ceturtdiena

Link to comment
Share on other sites

Tagad es izradisos vel vaininieks. Ja tu raksti piemeru, tad ludzu raksti, ta, lai piemera nebutu kludas. Tavs posts ir apmeram shads -

 

Man ir problema, lapa izmet erroru, ko man darit?

 

Kods -

 

<?php
echo 'ja, es nezinu"
return 1;
if($true ! = $false['d"]) {
 echo "kaut kas nav kartiba'
}
?>

 

Atrodi, kapec man neiet skripts, jo dazas kludas es vienkarshi atri rakstot, parrakstijos.

Edited by y2ok
Link to comment
Share on other sites

y2ok atvainojos par savu uzbraukumu.

 

Bet savai aizstāvībai varu tikai pateikt, ka tava piemērā protams nepārprotami nevar būt kļūdas un man arī iekš paša query nebija kļūdas. Tikai vizuālajā paskaidrošanas tabulā biju nokļūdijies.

 

Order by man ar varēja būt vēl kaut kāds 3 datu lauks, kas vispār arī manā gadijumā tā arī ir. :)

 

Ok es liekos mierā un kārtīgi jāizguļas, jo kaut kā šausmīgi kašķīgs šodien.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...