imamo slijedeće: sportaše, sportove (discipline) i jednu veznu tablicu.
treba napisati query da izbaci 5 najboljih iz svakog sporta.
/*
SQLyog Community Edition- MySQL GUI v8.2
MySQL - 5.1.49-community : Database - proba
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`proba` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `proba`;
/*Table structure for table `natjecatelj` */
DROP TABLE IF EXISTS `natjecatelj`;
CREATE TABLE `natjecatelj` (
`ID` int(11) DEFAULT NULL,
`ime` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*Data for the table `natjecatelj` */
insert into `natjecatelj`(`ID`,`ime`) values (1,'marko'),(2,'alen'),(3,'ivo'),(4,'pero');
/*Table structure for table `rezultati` */
DROP TABLE IF EXISTS `rezultati`;
CREATE TABLE `rezultati` (
`ID` int(11) DEFAULT NULL,
`sport_id` int(11) DEFAULT NULL,
`natjecatelj_id` int(11) DEFAULT NULL,
`vrijeme` time DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*Data for the table `rezultati` */
insert into `rezultati`(`ID`,`sport_id`,`natjecatelj_id`,`vrijeme`) values (1,1,1,'00:00:05'),(2,1,2,'00:00:06'),(3,1,3,'00:00:04'),(4,1,4,'00:00:03'),(5,2,1,'00:00:04'),(6,2,2,'00:00:08'),(7,2,3,'00:00:06');
/*Table structure for table `sport` */
DROP TABLE IF EXISTS `sport`;
CREATE TABLE `sport` (
`ID` int(11) DEFAULT NULL,
`sport` varchar(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*Data for the table `sport` */
insert into `sport`(`ID`,`sport`) values (1,'100m'),(2,'200m'),(3,'skok u vis');
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
ovo je moj query koji treba nadopuniti, sjećam se da je umjesto jednog polja bio select s uvjetom.
SELECT ime,sport,vrijeme FROM natjecatelj,sport,rezultati WHERE rezultati.sport_id=sport.id AND rezultati.natjecatelj_id=natjecatelj.id
ORDER BY sport,vrijeme
hvala