Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Γενικές συζητήσεις για SQL και SQL Servers (RDBMS)

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
ALKIVIADES
Honorary Member
Δημοσιεύσεις: 1322
Εγγραφή: 07 Απρ 2005 03:39

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ALKIVIADES » 18 Νοέμ 2005 01:19

Geia xara se olous
esto pos exume enan database FACTORY
kai ena TABLE CARS .
O pinakas CARS exei Inputs 2 pragmata Color kai Price .
opos tha moiazei kapos etsi ..
Color=red price=100
Color=silver price 500
etc etc
>> TO ERWTHMA MOY << :)
esto i lista mas afti exei xiliades eggrafes , pos na vrume pio einai to akrivotero amaxi ?

SELECT Price FROM Cars WHERE .. <-- Pos ???

Parakalo voithiste osoi gnorizete SQL ;)
:hammer:
perimeno..
thanks :o [/u]

Άβαταρ μέλους
ALKIVIADES
Honorary Member
Δημοσιεύσεις: 1322
Εγγραφή: 07 Απρ 2005 03:39

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ALKIVIADES » 18 Νοέμ 2005 01:53

Aha to vrika ginete apla me ti xrisi tis edolis MAX(..row..) :P ;) :)

Ok tora, afto to dokimasa se Mysql , i idia edoli MAX grafete to idio kai leiturgei to idio kai se Oracle perivalon ?? :question:

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ThyClub » 18 Νοέμ 2005 02:25

Νομίζω οτι και το ORDER BY το ίδιο κάνει.


Τα φθηνότερα:

Κώδικας: Επιλογή όλων


SELECT Price FROM Cars WHERE ... ORDER BY price ASC
Τα ακριβότερα:

Κώδικας: Επιλογή όλων


SELECT Price FROM Cars WHERE ... ORDER BY price DESC

Άβαταρ μέλους
ALKIVIADES
Honorary Member
Δημοσιεύσεις: 1322
Εγγραφή: 07 Απρ 2005 03:39

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ALKIVIADES » 18 Νοέμ 2005 03:24

OXI !! den kanei to idio!!

Κώδικας: Επιλογή όλων

to Order by apla tha katigoriopoisei ta apotelesmata analoga me to kostos kata seira .
dld ta akrivotera an pairnun times apo 100 eos 1000 tha einai me to order by os exis&#58;
1000
900
850
820
700
600
550
500
..
..
100
Omos me tin edoli MAX() tha su dosei to akrivotero mono 1000 !
H Max itan afto pou epsaxna:)

Κώδικας: Επιλογή όλων

H Max grafete os exis &#58; 

SELECT MAX&#40;Price&#41; as "Most Expensilve Car" FROM Clients;

Paromios kai i MIN . opo Max=mix kai egine;&#41;
:pint: :kaloe:

Apla thelo an kapios xerei an i MAX syntasete to idio akrivos kai se perivalon ORACLE ..??!?
:arrow: Syntax in Oracle is da same ?? :question:

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ThyClub » 18 Νοέμ 2005 03:52

Νόμιζα οτι ήθελες να φτιάξεις κάποιο πίνακα πχ που να δείχνει το ακριβότερο πρώτο μετα το λίγο φθηνότερο κτλ κτλ :P

Άβαταρ μέλους
ALKIVIADES
Honorary Member
Δημοσιεύσεις: 1322
Εγγραφή: 07 Απρ 2005 03:39

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ALKIVIADES » 18 Νοέμ 2005 03:57

aha is ok :) thanks pou eisaun prothymos ;)

Se ORACLE databse enviroment i edoli MAX syntasete akrivos to idio ? :question:
Giati ti dokimasa kato apo Mysql mono. Gnorizeis mip0s..?
:question:

Kai kati allo, xereis kanena kalo tutorial gia Keys, Kleidia sta ellinika?
:question:

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ThyClub » 18 Νοέμ 2005 04:18

Για Oracle δεν έχω ιδέα. Λογικά πρέπει να συντάσεται το ίδιο. Έψαξες καθόλου για κανενα manual?

Προσπάθησε να δείς στο manual της php ή της PEAR:: DB εκεί κάτι μπορεί να βρείς.

http://www.php.net
http://pear.php.net

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από shadow » 18 Νοέμ 2005 08:36

Το order by στη mysql το ιδιο με το max θα κανει εάν περιορίσεις τα αποτελεσματα που θα σου επιστραφούν μόνο σε ένα

Κώδικας: Επιλογή όλων

SELECT Price FROM Cars WHERE ... ORDER BY price DESC LIMIT 1
[/code]
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από Rapid-eraser » 20 Νοέμ 2005 19:14

me tnv movi diafora oti n MAX eivai agrigate function tis mysql kai girizei by defult single row
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6228
Εγγραφή: 30 Νοέμ 2004 03:09

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από fafos » 20 Νοέμ 2005 19:35

Ena oraio kommati kodika gia na sou emfanizei drop down menus gia anazhthsh apo mikroterh eos megalyterh timh (emfanizei mono tis times pou einai mesa sthn vash):

Κώδικας: Επιλογή όλων

<?
//create the Price Minimum menu
mysql_connect&#40;localhost, user, pass&#41;;
mysql_select_db&#40;"onomavashs"&#41;;
$q1 = "select distinct price from Cars order by price ASC";
$r1 = mysql_query&#40;$q1&#41; or die&#40;mysql_error&#40;&#41;&#41;;
$MinPrice = "<select name=price1>\n\t<option value=\"\">Μικρότερη</option>\n\t";

if&#40;mysql_num_rows&#40;$r1&#41; > '0'&#41;
&#123;
	while&#40;$a1 = mysql_fetch_array&#40;$r1&#41;&#41;
	&#123;
		$prices .= "<option value=\"$a1&#91;price&#93;\">$a1&#91;price&#93;</option>\n\t";
	&#125;
&#125;

$MinPrice .= $prices."</select>\n";


//create the max price menu
$MaxPrice = "<select name=price2>\n\t<option value=\"\">Μεγαλύτερη</option>\n\t";
$MaxPrice .= $prices."</select>\n";

?>
      από
      <? echo $MinPrice?>
      &#8364;  έως
      <? echo $MaxPrice?>
      &#8364;

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από shadow » 20 Νοέμ 2005 19:59

@Rapid-eraser
Δεν διαφωνούμε απλώς υπάρχουν και εναλλακτικοί τρόποι για να φτιάξεις κάτι.
Ειτε order by field desc limit 1 ειτε την max χρησιμοποιήσουμε τα ίδια αποτέλεσματα θα έχουμε.
Kαι από ένα γρήγορο τεστ, σε ένα πίνακα με 4000 records, που έκανα είδα ότι η max είναι και πιο αργή
max , order by desc limit 1
0.00022602081298828 , 0.00016999244689941
Close your eyes
For your eyes will only tell the truth and the truth isnt what you want to see
In the dark, is it easy to pretend that the truth is it ought to be.
Programmers are programmers because they like to code

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από Rapid-eraser » 20 Νοέμ 2005 20:03

:P eipa egw oti diafovoume :)
Mia praktiki diaforopiisi apla episimava tpt parapavo, xixi

Apla n MAX bon8aei se alla simia px otav exeis eva subquery kai to kaveis join me kapoio allo pivaka kai gevika doulebeis me routines se UDF epipedo n kati paromio ta agrigate eivai pio bolika giati apla ksereis ti kavei xoris va xriazete va to oriseis perifrastika.

Kave to idio akribos pragma xoris va exeis indexed to pedio pou ekaves to order by va deis av exeis ta idia apotelesmata :P
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
shadow
Script Master
Δημοσιεύσεις: 606
Εγγραφή: 14 Απρ 2005 18:30

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από shadow » 20 Νοέμ 2005 20:21

Καλά τα ίδια αποτέλεσματα είναι λογικό, να μην τα έχω όταν το ερώτημα δεν αναφέρεται σε indexed πεδίο (το τσέκαρα κιόλας:))
(max , order by) = (2.2902131080627, 0.66034412384033) =>not indexed field
(max , order by ) = (0.048585891723633, 0.00023412704467773)=>indexed field
[table me 95.465 records]
Αλλά για να πω την αλήθεια μου, περίμενα γενικά οτι η max θα είναι πιο γρήγορη σε σχέση με την order by limit 1

p.s ekana mia mikri diortosi :hammer:
Τελευταία επεξεργασία από το μέλος shadow την 20 Νοέμ 2005 20:24, έχει επεξεργασθεί 1 φορά συνολικά.

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από Rapid-eraser » 20 Νοέμ 2005 20:23

me 2 alla dev mporeis va kaveis prakseis me to limit kai to ordering :P
(se sql epipedo pavta)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
ALKIVIADES
Honorary Member
Δημοσιεύσεις: 1322
Εγγραφή: 07 Απρ 2005 03:39

Sql Πρόβλημα ! Πώς βρίσκουμε το ακριβότερο αμάξι ??

Δημοσίευση από ALKIVIADES » 23 Νοέμ 2005 01:35

hm deite mia pio poliploki morfi tu erotimatos edo => www.freestuff.gr/forums/viewtopic.php?t=19290

:hammer:
:question:

Απάντηση

Επιστροφή στο “Βάσεις Δεδομένων και SQL - γενικά”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες