AI 시대를 향유하는 AI 노마더

자바&Springboot플랫폼 과정/MariaDB

테이블내 세부검색하기

AI노마더 2023. 11. 30. 15:09

학생 테이블 생성과 세부검색

 

테이블 명세서

테이블 명 : tbl_students

필드(컬럼)명

  1. 번호 : sno - int - 자동증가 - PK
  2. 이름 : sname - varchar (20)
  3. 학년 : garde - char(1)
  4. 반 : clas - char (1)
  5. 국어점수 : kor_score - int
  6. 영어점수 : eng_score - int
  7. SQL점수 : sql_score - int

 

테이블 생성문
CREATE TABLE tbl_students( 
	sno INT PRIMARY KEY AUTO_INCREMENT, 
	sname VARCHAR(20),
	grade CHAR(1),
	class CHAR(1),
	kor_score INT, 
	eng_score INT, 
	sql_score INT 
);

 

정보 입력 
INSERT INTO tbl_students(sname, grade, class, kor_score, eng_score, sql_score) 
VALUES
('Hong', '2', '가', 50, 70, 80), 
('Kang', '4', '나', 80, 30, 90),
('Choi', '1', '다', 90, 20, 90),
('Jeong', '5', '마', 100, 90, 80),
('Oh', '1', '바', 80, 50, 30),
('Park', '5', '사', 70, 60, 80),
('Lee', '6', '자', 80, 90, 80),
('Seo', '2', '카', 90, 30, 20),
(null, '3', '다', 90, 30, 100),
('자길동', '4', '하', 90, 73, 50);

 

출력

 

SELECT * FROM tbl_students ;

 

세부 검색

1. 1학년인 학생들의 이름과 학년 반을 조회하시오

SELECT sname, grade, class FROM tbl_students WHERE grade = 1 ;

결과

 

2. 국어점수가 70점을 초과한 학생들의 이름, 학년을 조회하시오

SELECT sname,grade FROM tbl_students WHERE kor_score > 70 ;

결과

 

3. 영어 점수가 65~75점인 학생의 이름을 조회하시오. 

SELECT sname FROM tbl_students WHERE eng_score > 65 && eng_score < 75 ;

결과

 

4. 국어, 영어, SQL 점수 총합을 연산하고 높을 점수 순서대로 나열하시오.

SELECT *, kor_score+eng_score+sql_score AS 총점 FROM tbl_students ORDER BY 총점 DESC ;

결과

 

5. 순번 10에 있는 학생의 이름을 '마동석'으로 업데이트 하시오

UPDATE tbl_students SET sname = '마동석' WHERE sno = 10 ;

 

6. 'Choi','Jeong'.'Seo' 학생만 따로 호출하시오

SELECT * FROM tbl_students WHERE sname LIKE '__o%' ;

결과

 

7. 이름이 null인 학생의 모든 데이터를 삭제하시오

DELETE FROM tbl_students WHERE sname IS NULL ;

결과

 

8. 영어점수가 30점 학생들의 점수에 각각 20점씩 더하시오.

UPDATE tbl_students SET eng_score = eng_score + 20 WHERE eng_score = 30; 
SELECT * FROM tbl_students WHERE eng_score = 50 ;

결과

 

9. 국어점수가 최고의 학생의 이름을 조회하시오.

SELECT sname FROM tbl_students WHERE kor_score = (SELECT max(kor_score) FROM tbl_students) ;

결과

 

10. 국어점수가 최저인 학생의 이름을 조회하시오. 

SELECT sname FROM tbl_students WHERE kor_score = (SELECT MIN(kor_score) FROM tbl_students) ;

결과

 


수업내용

 

  • 함수 n1,n2,n3의 평균을 avg로 저장하고 반환하라. 
double f1 (int n1, int n2, int n3) {
	double avg = ( n1 + n2 + n3 ) / 3.0;

	return avg; 
}

 

 

  • 주어진 정보를 가지고 코드를 만들어라.
    • char tf;
    • tf = f4 (72);
char f4 = (int n) ; 
	char tf;
    
    return tf;
}

 

  • 주어진 정보를 가지고 코드를 만들어라.
    • 제공받은 점수가 60점 이상일때 O를 반환하고, 아니라면 X를 반환하라.
char f(int score) {
    char x;
    if (score >= 60) {
        x = 'O'; 
    } else {
        x = 'X'; 
    }
    return x; 
}