7시간 전 · 고다영 님의 새로운 답변
sql에서 cascade는 잘 안쓰시나요?
혹시 sql에서 cascade는 잘 안쓰시나요? cascade로 만들어볼까 하는데 로직 꼬이기 쉽다고 해서요.. 자잘한 데이터들이 많아서 안쓰는 쪽이 나을 것 같기도 하네요..
기술
#sql
#cascade
답변 2
댓글 0
조회 26
sql에서 primary키를 varchar로 설정해도 되나요?
sql에서 컬럼을 primary 키로 설정할 때 varchar로 설정해도 되나요? Foreign 키로 연결할 거라서요!!
기술
#sql
#primary-key
#varchar
#foreign-key
답변 1
댓글 0
조회 89
보안질문 중학교3학년인데 알려주실수 있나요?
재가 보안이랑 어플쪽에 관심이 많아서 게임으로 보안을 접하게 되었는데 지금 공부한 것들은 linux/SQLyog/docker/C/python/html/css/js 이것들을 배우고 있는데 보안쪽으로 갈려면 뭘하는게 좋을까요?
기술
#c
#python
#sql
#linux
#html
답변 2
댓글 2
조회 89
primary key 중복 데이터를 어떻게 처리하는게 좋을까요?
안녕하세요, 양이 많은 자료를 for 반복문으로 정리해서 테이블에 넣으려고 합니다. 그런데 이 테이블의 컬럼이 프라이머리키라서 중복값이 들어가면 에러가 떠요 ㅠㅠ 그래서 중복을 제거하려고 하는데 제거할 때 두 개 컬럼을 합쳐서 primary key로 지정하는 게 좋을지 아니면 코드로 중복체크 하는 게 좋을지 고민이 됩니다.. 사실 fetchall로 데이터 가져온 다음에 중복값이 있으면 continue 처리해도 되긴 하는데, 제가 원하는 방향이 for 반복문 안에서 sqlite 에러를 가져와서 continue 처리하는 것이라서요!
기술
#sql
#primary-key
#duplicate-key-error
답변 1
댓글 0
조회 84
오라클 DB SQL문 질문
안녕하세요, 오라클 DB 관련해서 질문있습니다. TEMP01 테이블에 TEMP02 일부 데이터를 중복된 데이터를 제외한 것만 저장을 합니다. 질문은 TEMP02 테이블에 연락처(CONTACT)와 TEMP01 테이블에 동일한 연락처 데이터가 있을 때 해당 데이터만 제외하고 저장하는 방법이 무엇인지 궁금합니다. 아래는 제가 구성한 SQL문입니다. INSERT INTO TEMP01 (CONTACT) SELECT A.CONTACT FROM TEMP02 A WHERE A.CAL_CD = '2' AND A.VISIT_DATE = '20230519' AND CONTACT IS NOT NULL GROUP BY A.TEMP003;
기술
#오라클
#oracle
#db
#sql
답변 1
댓글 0
조회 70
회사에서 작업하는 문서를 웹에서 작업할 수 있게끔 하고싶습니다
안녕하새요 국비로 공부하여 일반 회사에 it담당자로 취업하게 된 질문자 입니다! 현재 저희 회사는 ms sqlserver와 엑셀 vba를 활용하여 데이터베이스 접근조작이 가능한 형태로 시스템이 짜여있습니다 우선은 짜여진 시스템이니 코드와 검색등을 통해서 공부중입니다만, 새롭게 추가될 데이터들은 mvc 2패턴을 통해서 웹으로 구현해볼까 합니다. 다만 국비로 수업받을땐 단순히 개인pc에서 코딩파일들이 있어야만 개인pc한정으로 볼수 있었는데 이걸 sql서버가 깔려있지않은 다른 직원컴퓨터에서 웹으로 작업을 하려면 어떻게 해야하는지 모르겠습니다 추가로 혹시나 웹에서 작업한 데이터가 실시간으로 반영되는 내려받기용 엑셀파일을 첨부하는게 가능한것인지도 궁금합니다!
기술
#sql
#backend
#frontend
답변 3
댓글 1
조회 101
NVL vs ISNULL vs IFNULL (null 값 처리)
쿼리를 통해서 데이터를 가져올 때 null 일 때 값을 넣어서 줄 수 있더라고요 이렇게 되면 프론트에서 데이터 처리가 더 쉬울 것 같아서 사용해 보려고 합니다. 그런데 NVL 이라는게 있고 IFNULL이라는게 있고, ISNULL이 있더라고요 각각의 차이가 있는건가요??
기술
#sql
#nvl
#isnull
#ifnull
답변 2
댓글 3
조회 95
Db 시각화 도구 추천 부탁드려요
회사에서 sql 쿼리로 차트, 표 같은 통계낼 때 어떤 툴 사용하시나요? 저희는 redash 사용중인데 단축키나 sql 정렬 이 잘 안되는 점, 그리고 쿼리 유지보수나 버전 관리 같은 문제로 다른 툴 알아보고 있는데 각자 어떤 툴 사용하시는지 궁금해서요!! 장단점 같은 것도 함께 알려주시면 감사하겠습니다
기술
#redash
#통계
#sql
#데이터
#시각화
답변 1
댓글 0
Up 1
조회 66
sql 개발자 자격증 책 추천
안녕하세요! 저번에 어떤 쪽으로 갈지 다들 잘 알려주셔서 반향 잡기가 되었어요 감사합니다 ㅠㅠ 백엔드로 틀을 잡았는데 자격증은 한번 따볼려고요 spl 개발자 자격증을 따려고 하는데 어떤 책으로 공부하면 될지 추천해주실 수 있나용??
커리어
#sql
#자격증
#독학
#책추천
답변 0
댓글 0
Up 1
조회 86
MySQL에서 full outer join 어떻게 하나요?
안녕하세요, MySQL에서 full outer join을 하려고 하는데 원하는 결과값이 나오지 않습니다.. full outer join이 불가능한건가요? 방법이 없는지 궁금합니다 ㅠㅠ
기술
#mysql
#sql
답변 2
댓글 0
조회 60
SQL에서 Having과 Where 절 차이와 연산 순서는 어떻게 되나요?
SQL 작업 중에 질문이 생겨서 올립니다. Having 절과 Where 절의 차이는 어떻게 되나요? 순서는 어떻게 적용되나요? DB는 MySQL 사용하고 있습니다.
기술
#sql
답변 1
댓글 0
조회 156
SQL MONTH 함수가 문자열을 리턴하는 것 맞나요?
WHERE MONTH(DATE) = 3은 안되고 WHERE MONTH(DATE) = ""3"" 은 작동하던데.. 근데 또 WHERE YEAR(DATE) = 2022는 되더라고요..? 이게 대체 무슨 원리일까요....ㅠ
기술
#sql
답변 2
댓글 0
조회 77
SQL command not properly ended 에러
안녕하세요, 아래 에러는 보통 SQL에서 에러가 나는 건가요..? 아래에 에러 전문 첨부합니다. ### Error querying database. Cause: java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended
기술
#error
#sql
답변 1
댓글 1
조회 52
혹시 몽고디비 SQL 의 Group By 와 같은 기능이 있나요 ?
MySQL (SQL) 만 사용하다 이번에 몽고디비 (NoSQL) 를 처음 사용 해봅니다. 아직 사용법을 잘 모르겠는데 혹시 SQL 에서의 Group By 와 같은 기능을 사용할 수 있나요 ? Filter 랑 Sort 는 잘 쓰겠는데 Group By 는 원래 안되는것 같기도 하고 잘 모르겠네요. 도와주세요 ㅠㅠ
기술
#mongodb
#nosql
#sql
답변 1
댓글 1
조회 111
SQL에서 조인했을 때 where 조건은 어떻게 넣어야 하나요?
안녕하세요, 스타트업에서 일하고 있는 주니어 PM입니다. SQL에 대해 거의 모르고 입사했는데, 막상 입사해 보니 DB에서 데이터를 뽑아볼 일이 생각보다 많아서 어려움을 겪고 있어요 ㅠㅠ 생초보라 답답하실 수 있겠지만 질문 올려 봅니다. 1번 테이블에는 게시글의 id와 제목 정보가 있고, 2번 테이블에는 게시글에 달린 댓글의 id와 내용이 하나씩 쌓이고 있습니다. 제가 알고 싶은 정보는 게시글들의 댓글 개수인데요, 그래서 1번 테이블에 2번 테이블을 outer join하고, 1번 테이블의 id 기준으로 group by 하여 Count(2번테이블.id)를 뽑아내는 방식으로 개수를 세고 있습니다. 그런데 특정 id를 가진 게시글의 댓글 개수를 세고 싶어서 where 1번테이블.id in (~~~~) 줄을 추가했는데 아래와 같은 오류가 뜹니다. 2번 테이블에 있는 속성으로 바꿔 봐도 동일하고요. 오류 없이 특정 id를 가진 게시글만 뽑아 보려면 어떻게 해야 할까요? 그리고 위의 방식에서는 왜 오류가 발생하는 걸까요?? 오류: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'WHERE a.id in (~~~)' at line 7
기술
#sql
#join
답변 1
댓글 3
Up 1
조회 127
SQL에서 JOIN은 지양해야하나요?
안녕하세요, 최근에 어떤 블로그를 읽다가 클라이언트에 직접적으로 데이터를 뿌려주는 데이터베이스의 경우 JOIN을 지양하는게 좋다 라는 취지의 글을 보았는데요. 이게 현업에서도 그런지 궁금합니다. 물론 상황에 따라 다르겠지만, 일반적으로 조회가 잦은 데이터의 경우 JOIN 쿼리문을 잘 안쓰나요?
기술
#sql
답변 1
댓글 1
Up 1
조회 243
SQL에서 subquery는 인덱싱이 안 먹히나요?
아래와 같은 SQL을 작성해서 쓰려고 했는데, 인덱싱이 제대로 안먹더라구요. 혹시 sub query 로 만들어진 SQL은 인덱스를 안타나요? 인덱스는 pm, bm 모두 memberId에 걸려있고 추가로 bm.upgradedAt에도 걸려있습니다. 사용하고 있는 DB는 mariaDB 입니다.
기술
#sql
답변 1
댓글 1
Up 1
조회 73
(SQL) Join 후 Group by 했을 때 0이어도 데이터 표시되도록 하는 방법
테이블을 OUTER JOIN 한 후 GROUP BY 해서 데이터 개수를 세려고 하는데요, 데이터 값이 없는 경우는 아예 로우 자체가 포함되질 않던데 혹시 값이 없는 경우에도 0으로 표시되도록 할 수 있는 방법이 없을까요?
기술
#sql
#join
#groupby
답변 1
댓글 1
조회 69
DB테이블 컬럼에 대해 질문드립니다
문의사항 이란 테이블에 어떤 문의사항인지에 대한 컬럼( 결제 문의, 시스템문의 등 )있다 가정 하겠습니다. 그 컬럼의 데이터 타입을 ENUM으로 잡고 한글로 값을 넣는게 잘못된건가요? 제가 볼땐 문의사항 내용도 한글인데 타입값은 한글로 넣으면 안되는 건지 궁금해서요.. 고수님들 답변 부탁드립니답!
기술
#mariadb
#sql
답변 1
댓글 1
Up 1
조회 114
장고 프레임웍 사용 경험을 공유해 주세요
장고로 프로젝트를 진행하고 있습니다. 기존 자바로 짜여진 구조를 리팩토링 하는 차원으로 파이썬과 장고로 만들어보고 있는데요 인터넷에 있는 많은 장고 튜토리얼, 게시판 문서들은 model 에서 id를 사용하고 fk를 적극적으로 사용해 orm을 무조건 사용하더라구요 하지만 실제 서비스 운영 배포되고 있는 서비스도 이런 구조로 사용하는지, 혹은 직접 쿼리를 날리거나 fk를 사용하지 않는지 등 참고할 만한 내용을 공유해주시면 감사하겠습니다. 덧붙여 모델을 만들어 db로 마이그래이션 하는게 당연(?)한건지 아무도 그렇게 안쓰고 db먼저 만들고 모델 생성하시는지 그런 것도 궁금합니다. 저는 후자가 맞는것 같은데 자료는 전자가 많아서... 입문용 자료라 그런건지..
기술
#python
#django
#restapi
#restfulapi
#sql
답변 3
댓글 8
Up 14
조회 1,287
백엔드 엔지니어로 입사함에 있어서 SQLP의 가치가 궁금합니다
올해 2월에 졸업예정인 대학생입니다. 백엔드 엔지니어로 입사하길 원하는데, 여러 회사의 백엔드 채용 우대사항에 '쿼리 튜닝에 관심이 있는 자' 라는 문구가 포함되어 있었습니다. 때문에 이를 증명할 수 있는 것이 SQLP라고 생각해서 공부를 시작했습니다. 그런데 SQLP 합격 후기글을 여럿 보다보니 전반적으로 DBA분들이 많았고 생각해보니 백엔드 엔지니어로 취업을 희망하는 동기중에 SQLP를 공부하는 동기는 한명도 없어서 이걸 계속 하는게 맞는건지와 동시에 SQLP 자체에 대한 궁금증이 생겨서 질문 올립니다. 1. 쿼리 튜닝에 관심이 있다는 사실을 증명하기 위한 SQLP 취득이 백엔드 엔지니어에 있어서 방향성이 안맞거나 혹은 부족하거나 과한지 궁금합니다. 2. SQLP를 취득하셨다면 그 준비기간이 궁금합니다. 3. SQLP에 대한 현업자 분들의 인식이 궁금합니다. 질문 읽어주셔서 감사합니다.
기술
#sqlp
#sql
#backend
답변 2
댓글 1
조회 839
개발자 sqld,정처산기 필요여부
3년제 이름있는 전문대를 다니고 있는 프론트엔드 지망생입니다. 제목에 명시된 sqld나 정처산기를 따는것이 좋을까요?
기술
#sql
#전문대
#정처산기
#프론트엔드
#지망생
답변 2
댓글 0
Up 1
조회 266
영화관 처럼 좌석 예약 기능은 어떻게 구현하나요?
개인 프로젝트 중에 영화관 좌석 예약처럼 한 사용자가 고른 값을 다른 사용자가 동시간에 사용하지 못하게 하려면 백엔드를 어떻게 구현해야하나요? 단순히 좌석을 선택했을때 백엔드로 요청을 보내서 좌석 상태 (예약됨, 예약안됨)를 바꿔주면 되나요? 동시에 예약하기 페이지를 진입하면 사용자 A와 B 모두 a 좌석 상태가 예약 안됨일때인데, 사용자 A가 a 좌석 상태를 예약됨으로 변경하면 사용자 B에게는 여전히 a 좌석이 예약안됨으로 보일 것 같아서요. 제가 원하는건 사용자 A,B가 동시에 접속해서 좌석 a가 빈 자리여도 둘 중 아무나 a 좌석을 예약하면 나머지 한명에게는 a 좌석이 예약됨을 보여주고 싶습니다. 참고로 사용하고 있는 DB는 postgresql입니다. 서버는 노드구요. 이런 기능은 어떻게 구현하는지 궁금해서 질문 남깁니다.
기술
#sql
#nodejs
답변 2
댓글 0
Up 4
조회 472
이번에 db개발 빅데이터/dw개발 신입으로 입사했는데 입사 전 무엇을 공부해서 가면될까요??
정보처리기사를 취득하면서 기본적인 sql 문법구조는 알고있습니다 하지만 부족하다고 생각되어서 질문드립니다 어떤것을 배워가야하며, db쪽은 미래 전망이 어떻게 되는지 알수있을까요??
기술
#sql
#oracle
#db
#database
답변 0
댓글 0
Up 1
조회 151
라라벨 enum 타입 havingRaw절 사용방법 도와주세요ㅠㅠ
안녕하세요 :) 현재 라라벨로 프로젝트를 하고있습니다. havingRaw을 사용하는데 다른 타입들의 데이터들은 다 잘 작동하는데 데이터타입이 enum인 것만 작동을 안합니다. 그러나 아래의 sql문은 하이디sql 에서 실행이 잘 됩니다. SELECT order_id AS cnt FROM test_table WHERE mall_id = 'test_mall' AND user_id = 'test_user' GROUP BY order_id HAVING MIN(type) = 'p' 데이터 타입은 아래와 같습니다. order_id = varchar mall_id = varchar user_id = varchar type = enum $row= DB::table("test_table") ->select(DB::raw('order_id as cnt')) ->where("mall_id", $test_mall) ->where("user_id", $test_user) ->groupBy('order_id') ->havingRaw('MIN(type) = p') ->get(); 해당 쿼리빌더에 잘못된 점이 있을까요??
기술
#라라벨
#php
#sql
#laravel
#mysql
답변 1
댓글 1
조회 106
파이썬과 sql만으로도 취업할수 있나요?
자바 기본 구성만 조금 알고 자바스크립트 조금 안다면 파이썬과 sql을 사용할수 있다면 취업이 가능한가요? 자바도 같이 공부를 해야할까요?
커리어
#파이썬
#java
#sql
#python
답변 1
댓글 0
Up 1
조회 392
SQL varchar(n)과 한글 글자 수 질문
테이블의 한 컬럼을 varchar(50)으로 설정 했습니다. 50자까지 들어갈 수 있는걸로 알고 있었는데 검색해보니 mysql 버전에 따라 저 숫자 50이 글자 수 일수 있고 byte일수도 있다는 것을 알았습니다. 일단 저는 글자 수로 들어갑니다. 한글 50자 까지 잘 들어가고 있습니다. 그래서 확인해보기 위해 length를 통해 들어간 데이터의 길이를 조회했는데요 대부분의 데이터가 50을 넘고 있었습니다. 한글은 * 3을 한 수치고 영어는 한글자에 1의 길이를 차지하는 것 같습니다. 왜 이런 일이 발생하는 걸까요? 조회한 쿼리문 select length(title) as length, title From Contents where title is not null; 결과 예시 row length | title 120 | 가나다라마바사아자차카타파하가가가가가가가가가가가가가가가가가가가가가가가가가가 6 | 인형 5 | hello 17 | test 중입니다
기술
#sql
#varchar
#data-type
답변 2
댓글 0
조회 277
SQL JOIN시 필터 조건을 어디에 넣어야 하나요? on vs where
안녕하세요~ SQL JOIN에 대한 질문이 있습니다. tableA id, type 1, comment 2, comment 3, comment 4, reply tableB id, value 1, test 2, test2 3, test3 4, test4 라는 테이블이 있을때 tableA의 type으로 필터를 걸려고 하는데, 어떤 방식으로 해야하는지 궁금합니다. 1. SELECT * FROM tableB as b LEFT JOIN tableA as a ON a.id = b.id WHERE a.type = "comment"; 2. SELECT * FROM tableB as b LEFT JOIN tableA as a ON (a.id = b.id AND a.type = "comment"); 원하는 결과 값은 tableB와 A를 LEFT JOIN한 데이터 중 tableA type이 comment인 row만 추출하면 됩니다. 필터를 ON에다가 걸어야하나요? 아니면 WHERE에다가 걸어야하나요? 둘의 차이가 어떻게 되나요? 둘의 결과 값이 달라지긴 하더라구요. 2번을 사용하면 a.type이 comment가 아닌 것은 tableA 쪽 값들이 null로 나오더라구요. 같은 필터인데 왜 결과가 다른지 잘 모르겠습니다 ㅠㅠㅠ
기술
#sql
답변 2
댓글 0
Up 5
조회 197
[SQL] 중복데이터 개수를 세는 방법?
sql을 처음 합니다. 학원에서 실습과제중에 막혔습니다.ㅜㅜ 중복데이터가 몇 개 있는지 알고 싶습니다. 방법을 알려주세요. 테이블 구조에서 column은 id, userId, itemId, createdAt, updatedAt. userId가 여러 itemId를 가질 수 있습니다. 각 userId가 몇개의 itemId를 가지고 있는지 보고싶습니다. 그래서 userId중복을 제거하고 count를 붙여서 아래와 같이 했습니다. SELECT userId, COUNT(DISTINCT userId) FROM table; 중복은 제거되는것 같은데 전체 중복제거 된 userId가 몇개인지 나오는것 같아요 저는 userId별로 총 몇개의 row가 있는지 알고싶은데... 혹시 아시는분 있으면 알려주세요.
기술
#sql
답변 1
댓글 0
Up 2
조회 193
관계형 DB 설계 시 카테고리 같은 것은 어떻게 저장하시나요?
안녕하세요. 이번에 기능을 구현하다가 문득 궁금해져서 질문납깁니다. 요구사항은 게시글에 카테고리가 추가되고, 해당 카테고리에 따른 게시글을 모아보는 페이지와 네비게이션을 생성하는 작업입니다. 네비게이션에서 게시글 카테고리를 클릭하면 해당 카테고리의 게시물들을 보여주는게 주 목적입니다. 게시글이 post로 MySQL에 저장되고 있는데 여기에 category라는 값을 추가하려고 하는데요. 질문은 카테고리를 어떤 형태로 저장하는게 좋은가 입니다. 기존 코드와 DB 설계 (다른 유사한 테이블)를 살펴보면 category라는 값을 숫자로 저장시키고 사용하는 서비스에서 각 숫자에 맞는 설명?타입을 선언하는 방식이더라구요. 예를 들면, DB에 category = 1로 저장된 post는 사용하는 서비스 (서버)에서 enum 또는 const로 선언해서 category = 1이면 PostCategory.Article 타입을 같는 형태입니다. 이후 사용자가 보게되는 프론트에서도 유사하게 category에 따른 카피를 보여주고 있어요. 특이사항이 있다면, 프론트에서 category에 따라 보여지는 카피는 수시로 바뀔 수 있을 것 같아요. 예를 들면, category = 1인 Article 타입이라면 카피 문구가 “논문”이라고 했을때, 나중에 카피가 “기사” 같은 것으로 바뀔 수 있어요. 이렇게 category 처럼 데이터의 속성이 잘 안바뀌는 값은 숫자로 정의하고 사용하는 위치마다 그에 맞게 타입을 선언하는게 좋을까요? 아니면 category를 DB에 만들때 문자열 형태로하고 “article”이라는 값을 바로 DB에 저장하는게 좋을까요?
기술
#sql
답변 1
댓글 0
Up 2
조회 895