본문 바로가기

[MY-SQL] mysql_fetch_row, mysql_fetch_array, mysql_fetch_assoc 초보분들에게 유용할까 해서....흠.. 이 두 함수는 대개 별 차이점이 없다고 생각할 수 있습니다. 그냥 배열을 정의 하는것이라 생각하고 걍 사용할수도 있을겁니다. 하지만 차이점이 있죠.. 다음의 예를 먼저 보시고 차이점이 뭔지 생각해보세요.:) ●Mysql_fetch_row사용 예 ●Mysql_fetch_array사용 예 위의 두 예제를 보시면 이해가 되시나요..row는 데이터베이스에서 가져온 데이터를 배열로 패치(fetch)할 때 0부터 배열이름을 부여합니다.하지만 array는 정돈된 데이터베이스의 필드이름을 그 값의 key값으로 가져오게 됩니다. 보통 select할 데이터 필드가 적을 경우라면 mysql_fetch_row를 사용해도 상관없지만 만약 select할 데이터 필드가 많다면 mysql_fe.. 더보기
[MY-SQL] 현재(오늘)부터 특정일 까지를 구하는 Query문(between, subdate) + 오늘 기준 이번주, 이번달 구하는 Query문 query 문을 이용해서 오늘부터 특정일까지에 쓰여진 글들의 갯수를 구하고자 한다. 만약에 아래와 같이 한다고 하면 select count(*) from board where regdate >= @@@ and regdate 더보기
[MY-SQL] DB 테이블 연산자 - JOIN 연산자 (두 개 이상 테이블 간의 비교검색) JOIN (조인) 연산자 - 두개 이상의 테이블을 연결하여 데이터를 검색할때 사용한다. - 데이터베이스 시스템과 그 환경의 성능을 확인하는데도 사용할 수 있다. (느린 쿼리를 사용하여 비교) - 조인에는 여러가지 종류가 있다. - 내부조인(INNER JOIN) : 조건을 사용해서 두 테이블의 레코드를 결합한다. - 외부조인(OUTER JOIN) : 내부조인과 비슷한데 일치하지 않는 열까지 반환하며 그 열은 NULL로 반환한다. - 동등 조인(EQUI JOIN) : 내부조인이다. 두 테이블 사이의 같은 행들을 반환한다. - 비동등 조인(NON-EQUI JOIN) : 내부조인이다. 두 테이블 사이의 같지 않은 행들을 반환한다. - 자연 조인(NATURAL JOIN) : 'ON' 절이 없는 내부조인. 같은 열.. 더보기
[MY-SQL] 서브쿼리 - 두 개 이상의 SQL쿼리 조합하기 서브쿼리(SubQuery) - 하나의 SQL문 안에 포함되어 있는 또 다른 SQL문을 말한다. Select some_column, another_column From table Where column = (Select column From table); 검은색 : 외부쿼리, 빨간색 : 내부 쿼리, 서브쿼리 서브쿼리 조건 1. 서브쿼리는 언제나 Select 문 하나다. 2. 서브쿼리는 항상 괄호 안에 있어야 한다. 3. 서브쿼리는 세미콜론이없다. 세미콜론은 항상 전체 쿼리의 마지막에 위치한다. 4. 서브쿼리는 쿼리문의 4 곳에 나올 수 있다. - Select절, 열들의 하나로 열 리스트를 선택하는 경우, From 절, Having 절. 5. 서브쿼리는 Select뿐 아니라 Insert, Delete, Up.. 더보기
[MY-SQL] where 1=1? a. sql = select * from table; b. sql = select * from table where name = 'gg'; 이런 경우에 조건을 붙인다고 할 때 sql = sql + "and age = '21'"; a의 경우를 보면 오류가 발생한다. 이럴 경우 if문을 이용해서 where문이 사용되었는지 아닌지를 판별하는 조건을 사용하여야 하는데, 이럴경우 내용이 길어지고 가독성이 떨어지며 '귀찮기'때문에 where 1=1을 사용한다. 1=1은 항상 참이기 때문에 쿼리문에 영향을 주지 않는다. 1=1을 사용함으로써 아무 생각없이 조건을 붙여 사용할 수 있다. sql = select * from table where 1=1 and age = '21'; 같은 내용으로 1=2도(항상 거짓) 사용.. 더보기