001, 002, 003 이렇게 맵핑 해주는 mssql 쿼리를 작성해줘. NMA_CLIENT 컬럼에 순차적으로 증가하는 쿼리를 만들어줘.
RowNum AS 함수를 사용해서 할 수 있다!
;WITH CTE AS (
SELECT
{매핑할 컬럼명},
ROW_NUMBER() OVER (ORDER BY {고유키 컬럼명}) AS RowNum
FROM
[테이블명]
)
UPDATE CTE
SET {매핑할 컬럼명} = RIGHT('000' + CAST(RowNum AS VARCHAR(3)), 3);
class SuperObj { //부모클래스
public void show() {
print();
}
public void print() {
print();
System.out.print("Super");
}
}
class SubObj extends SuperObj { //자식클래스
@Override
public void show() {
super.print();
}
@Override
public void print() {
System.out.print("Sub");
}
}
public class Soojebi {
public static void main(String[] args) {
SuperObj s = new SubObj(); //이 코드에 따라 위의 결과값이 달라진다.
s.show();
}
}
풀이
1. java는 main에서 시작한다.
2. SuperObj s = new SubObj(); //다형성_ 부모 클래스 타입의 변수에 자식 클래스의 객체를 할당하는 것이다.
3. s.show();
4. Subobj class의 show() 함수가 실행된다.
4-1. super.print(); //Superobj class로 이동한다.
5. Superobj class의 print()함수 실행
5-1. print()함수 _ print(); // 이는 자식 class에 있는 print()를 이용하는 것이다. <- Sub실행
5-2. 자식 class가 종료되고 다시 부모클래스의 장소로 와서 Super가 실행된다.
=> 이는 다형성의 개념과 오버라이딩의 개념을 알아야한다.
오버라이딩 : 부모 class의 매서드를 자식class 매소드의 재정의하는 것
다형성 : 하나의 객체가 여러가지 타입을 가질 수 있는 것을 의미한다.
+ 오버로딩 : 같은 이름의 매소드가 매개변수의 타입이나 개수에 따라 다르게 정의되는 것을 말한다.