검색
아하에서 찾은 1,000건의 질문
- 생활꿀팁생활Q. php에서 반복되는 sql 쿼리를 어떻게 하면 하나로 끝낼 수 있을까요?안녕하세요.php, mysql을 사용한 그누보드 서버에서 아래와 유사한 코드를 사용중인데요, 이렇게 하면 mysql이 cpu를 다 잡아먹어서 과부하가 걸립니다.해결방법을 찾다가 sql문을 루프돌리는것보다는 join으로 해결하라고 하는 글을 봤는데 실제로 sql문을 과도하게 실행하는게 서버 부하의 주원인입니다.그래서 sql쿼리를 한번만 사용하도록 코드를 바꾸고 싶은데 sql에 대해 많이 미숙해서 어떻게 바꿔야할지 잘 모르겠어서 도움 부탁드립니다.코드를 설명드리자면, 테이블의 24시간치 데이터를 가지고 100 / 분당 레코드수를 계산한 값을 모두 합하는 코드입니다.혹시 이해하기 어려우실까봐 2분 데이터만 사용하는걸로 예를들면 처음 1분은 100개의 레코드가 있고, 다음 1분은 50개의 데이터가 있다고 하면$sum = 100/100 + 100/50 즉, 3이 나옵니다.2분이면 루프가 2번이지만, 아래 코드는 24시간 데이터니까 24*60 = 1440번 루프를 실행하게 되죠.sql_fetch가 그누보드 함수던데 혹시라도 그누보드를 안쓰시는 전문가님들이 계실수도 있어서 아래에 해당함수 내용을 추가했습니다.문제의 코드:$sum = 0; for ($i = 0; $i < 1440; $i++){ // 24시간 * 60분 = 1440 $time1 = date("Y/m/d H:i",(strtotime($basetime) - 864000 + ($i * 60))).":00"; // $basetime으로부터 24시간 전부터 1분전까지 1분씩 증가 $time2 = date("Y/m/d H:i",(strtotime($basetime) - 60 + ($i * 60))).":59"; // $basetime으로부터 23:59:59 전부터 basetime까지 1분씩 증가 $sql = "select count(*) as cnt from mytable where start_time between '$time1' and '$time2'"; // mytable에서 $time1~$time2 시간 사이(1분)의 레코드수를 가져오는 쿼리 $query_result = sql_fetch($sql); // 쿼리 실행 $sum += 100 / $query_result['cnt']); // 100/레코드수를 누적합산 } echo $sum;sql_fetch 함수:function sql_fetch($sql, $error=TRUE) { $result = sql_query($sql, $error); //$row = @sql_fetch_array($result) or die("<p>$sql<p>" . mysql_errno() . " : " . mysql_error() . "<p>error file : $_SERVER[PHP_SELF]"); $row = sql_fetch_array($result); return $row; } function sql_fetch_array($result) { $row = @mysql_fetch_assoc($result); return $row; }
- 생활꿀팁생활Q. 엑셀 크롤링 관련해서 질문드립니다.카카오채널에서 쇼핑몰을 만들어서 고객님 명단을 댓글에서 추출해서 DB로 관리할려고 연습중인데요.(참고로 채널은 제 채널은 아니고 만들때 참고할려고 찾은 채널입니다.) 아래 사진에 나오는것 처럼 나눠서추출할려고 하는데요.실행하면 일부분 추출이 되지만 홈페이지 처음 들어갔을때 나오는 댓글 15개만 추출되고댓글 더보기 눌러야지 보이는 댓글들은 추출이 안되요.그리고 15개 추출될때 추출되고 나면 런타임 오류가 발생하는데어떻게 해야지 해결될까요?원래 제가 똑같은 내용으로 질문을 드렸는데 질문한 코드가 잘못되서....다시한번 또 물어봅니다.친절한 답변 기다리겠습니다.추출할 값사용한 코드Option ExplicitPublic Sub parsehtml()Dim http As Object, html As New HTMLDocument, topics As Object, titleElem As Object, detailsElem As Object, topic As HTMLHtmlElementDim i As Integer'// 익스플로어(XML변수 설정)Set http = CreateObject("MSXML2.XMLHTTP")'// 검색 (XML 요청)http.Open "GET", "https://pf.kakao.com/_ElxfrT/53587918", Falsehttp.sendhtml.body.innerHTML = http.responseText '// HTML 추출 Set topics = html.getElementsByClassName("item_cmt") i = 2 '// 개체 검색 For Each topic In topics '// 요소별 값 추출 Set titleElem = topic.getElementsByTagName("div")(2) Set detailsElem = topic.NextSibling.getElementsByTagName("div")(1) Sheets(1).Cells(i, 1).Value = detailsElem.getElementsByTagName("strong")(0).innerText Sheets(1).Cells(i, 2).Value = detailsElem.getElementsByTagName("p")(0).innerText Sheets(1).Cells(i, 3).Value = detailsElem.getElementsByTagName("span")(0).innerText i = i + 1 Next End Sub
- 지식재산권·IT법률Q. 프로그래밍 외주 계약 불이행 소송하고싶습니다.올해 9월 중순, 네이버 카페를 통해 개인 프로그래밍 외주업자를 구했습니다(이하 P씨) . 구두 계약으로 착수금 40만원을 먼저 송금하고 10월 초 까지 프로그램을 제작하는 걸로 했습니다. 중간에 P씨가 프로그래밍에 필요하다고 제가 가지고있는 노트북 2대를 보내달라고 했고, 추가 부품 구입이 필요하다며 돈을 좀더 요구했습니다. 협의 끝에 원래 프로그램이 완성된 뒤 주기로 했던 40만원을 미리 보내주고 그 안에서 해결하기로 했습니다. (총 80만원 송금, 노트북 2대 대여) 하지만 10월 초, 중, 말이 되어도 프로그램을 완성시키지 못했고, 저희는 계약을 파기하고자 노트북과 돈을 돌려달라고 했습니다. 하지만 P씨는 전혀 이행하지 않았고 도리어 화를 내며 기다리라는 말만 반복합니다. 결국 11월 초에 그 동안 미룬게 미안하다며 250만원과 노트북을 돌려 준다고 하며 11월 10일까지 준다는 계약서 까지 작성을 했습니다. 11월 10일 노트북은 받았지만 돈은 돌려받지 못했고, 12월 현재 까지 계속 변명을 하면서 미루는 상황입니다. 돈을 돌려받으려면 어떻게 해야하는지, 할 수 있는 소송이 무엇인지, 경찰에 신고를 할 수 있는지 궁금합니다.
- 생활꿀팁생활Q. html에서 if문 사용하고있습니다.nodejs mongoDB 사용중입니다. DB값을 변수?에 담아서 html로 담긴값을 if문으로 판단해서 출력해서 보여주고 싶습니다.(if문만 제거하면 값이 잘 출력되는 것으로 확인이되었습니다.)1. 아래는 html(ejs부분입니다.) if문이 잘못된거 같아요. <% for (const p of posts) { %> <% if(p.category == "test11_board") { %> <li class="list-group-item"> <a href="/test11_board/view/<%= p._id %>"> <%= p.title %> / <%= p.username %> / <%= p.created_at_format%> </a> </li> <% } %> <% } %>2. jsboards에 저장글 내용이 들어 있습니다.const Test11BoardService = require('../service/test11_board_service'); // html-entities module is required in showpost.ejs const main_listpost3 = async function(req, res) { const { boards, totalCnt, totalPage } = await Test11BoardService.findTest11BoardListWithPaging(1, 5, null, null); var context = { title: 'Test11글 목록', posts: boards, page: 1, pageCount: 5, perPage: 5, totalRecords: 5, size: 5 }; res.render('index', context); };
- 양도소득세세금·세무Q. 부동산 양도 관련하여비과세 가능여부?안녕하세요비과세 가능여부 관련 문의 드립니다<조건>무주택자로서관리처분 후 조합원입주권 취득(2년이상 보유)하였으며,현 시점 금액 9억이하(P포함)에 해당 합니다이경우 비과세 가능 한가요?가능하다면 혹은 불가능 하다면어떠한 법률 조항에 의거하여 가능, 불가능 한지 알고 싶습니다.부동산 중개업을 하고 계시는 분들 마다 의견이 분분하다 보니 어느쪽의 말이 맞는지 모르겠습니다.소중한 답변/고견 부탁 드립니다.감사합니다
- 생활꿀팁생활Q. 현재 주식 포트폴리오에 대하여 질문드려요안녕하세요 지금 현재 주식관련해서 장기투자 생각중입니다포트폴리오 구성이 괜찮은지 여쭤보려고합니다1 국내주식 계좌삼성전자우 ,쌍용양회 ,2차전지etf2 해외주식 계좌 애플, XLV etf3 연금저축 계좌tiger 미국나스닥 100, s&p 500 , 다우존스30이렇게 가져가려고 합니다어떤것 같나요 장기투자 20년 가려고 합니다그리고 연금저축계좌에서는 미국나스닥이나 다우존스 등 미국 추종 etf를 하면 세금에서 유리하다는데 무슨말인가요?제가 국내 etf를 연금저축 계좌에서 샀더니 굳이 연금계좌로 하지말고 일반 주식계좌로 하라고하저라고요 어차피 세금 안뗀다고 이게 무슨 말인지 궁금 합니다
- 생활꿀팁생활Q. Exception in thread "main" java.lang.NullPointerException오류가 뜨는이유가 뭔가요?package 과제8;import java.util.*;import java.text.SimpleDateFormat;public class TestProgram { private static ArrayList<Customer> customers; private static ArrayList<Staff> staffs; private static Collection<Object> myCollection; static <T> void addArrayToCollection (Collection<? extends T> a, Collection<T> c) { c.addAll(a); } public static void main(String[] args) throws Throwable{ SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd"); Customer customer1=new Customer("이","01044443333","서울0404"); Customer customer2=new Customer("현","01011112222","부산0505"); Customer customer3=new Customer("은","01099998888","포항0101"); //Customer instance 3개 만들기 customers.add(customer1); customers.add(customer2); customers.add(customer3); //3개의 Customer instance를 customers에 추가하기 Staff staff1=new Staff("주","01067674444","홍보부"); staff1.dateHired=dateFormat.parse("2019-02-22"); Staff staff2=new Staff("영","01000002234","기획부"); staff2.dateHired=dateFormat.parse("2017-10-31"); //Staff instance 2개 만들기 staffs.add(staff1); staffs.add(staff2); //2개의 Staff instance를 staffs에 추가하기 addArrayToCollection(customers, myCollection); addArrayToCollection(staffs, myCollection); for(Object p:myCollection) { System.out.println(p); ((Person)p).printinfo(); } }}
- 생활꿀팁생활Q. Vue v-for 에서 input 폼 검증안녕하세요.현재 폼검증을 만들고 있습니다만.유효성 검사 실패시 나오는 문구가 동시에 나와서 이것을 어떻게 나눠줘야 할지 궁금합니다. 소스 자르고 수정해서 올리느라 v-for :key 값 없는 데이터 이런거는 양해부탁드립니다.<div v-for="Accounts in AccountArrays" :key="Accounts.id"> <input :type="Accounts.type" :id= :placeholder="Accounts.title" v-model="Accounts.value" /> <p v-if="ValidatorEvent.Error"> {{ ValidatorEvent.Error[0] }} </p> </div> <script> import Validator from "../../assets/js/Validate"; data() { return { AccountArrays: [ { title: "이메일", value: "", }, { title: "핸드폰 번호", value: "", }, { title: "비밀번호", value: "", }, { title: "추천인", value: "", }, ], ValidatorEvent: { Error: "", }, }; }, watch: { "AccountArrays.0.value": function (value) { this.ValidatorEvent.Error = Validator.Validate("Email", value); }, "AccountArrays.1.value": function (value) { this.ValidatorEvent.Error = Validator.Validate("Phone", value); }, "AccountArrays.2.value": function (value) { this.ValidatorEvent.Error = Validator.Validate("PassWord", value); }, "AccountArrays.3.value": function (value) { this.ValidatorEvent.Error = Validator.Validate("Referral", value); }, }, </script>Validate.js우선은 유효성 검사 없이 경고메시지 뜨는것을 보기 위해 작성되었습니다.export default { Validate(type, value) { let Temporary = []; let Length; let Content; let Empty; switch (type) { case "Email": Length = 3; Content = "이메일 형식에 맞게 입력해주세요."; Empty = "이메일을 입력해주세요."; break; case "Phone": Length = 3; Content = "핸드폰 번호에 형식에 맞게 입력해주세요."; Empty = "핸드폰 번호를 입력해주세요."; break; case "PassWord": Length = 3; Content = "영문, 숫자를 포함하여 8자 이상입니다."; Empty = "비밀번호를 입력해주세요."; break; case "Referral": Length = 3; Content = ""; Empty = ""; break; } if (!value) { Temporary.push(Empty); } else { Temporary.push(Content); // if (value.length < Length) { // Temporary.push(Content); // } } return Temporary; }, };
- 생활꿀팁생활Q. 국내시장이든 미국시장이든 현재 거품이 많이 껴있는 건가요?현재 코로나가 종식한 것도 아닐 뿐더러 더욱 심해지고 있는 상황인 것 같은데 코스피 지수나 s&p지수를 보면 꾸준히 상승을 하는 것 같은데 20년 2월 처럼 폭락장이 한 번 더 올 것 같다고 생각하시나요?
- 생활꿀팁생활Q. 증류수가 대기에 노출이 되면 전도도가 높아지나요?전원공급장치의 냉각을 위해 증류수를 냉각탑을 사용해 냉각수로 사용하고 있습니다.장비의 특성상 전도도가 중요한 요소인데 전도도가 올라가는 요인에 대해 문의합니다. 가동 상황은1. 증류수의 온도 변화 범위 : 20~45 도 가량2. 증류수를 순환시키는데 수조통에서 대기에 노출. (대기에 노출되면 이산화탄소와 결합해 P.H 농도가 낮아지며 전도도가 올라간다고 하는데 P.H농도와 전도도의 연관도를 알고 싶습니다)3. 증류수와 E.G(에티렌글리콜)을 6:4 비율로 섞어서 사용. 2번 항목과 연관성이 있는지 궁금합니다.