Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View yukihirai0505's full-sized avatar
:octocat:
Wanna work abroad

Yuki Hirai yukihirai0505

:octocat:
Wanna work abroad
View GitHub Profile
@yukihirai0505
yukihirai0505 / __init__.py
Last active October 1, 2015 08:27
fabricでデプロイ自動化
#!/usr/local/bin/python
# -*- coding:utf-8 -*-
from fabric.api import *
from fabric.decorators import runs_once
from datetime import datetime
env.hosts = ['ホスト名']
env.user = 'ユーザー名'
env.key_filename = '鍵の場所'
env.project_name = 'プロジェクトネーム'
SET @t = 2;
SELECT
SUM(A.counter) AS counter
FROM
(SELECT
FROM_UNIXTIME(CEILING(UNIX_TIMESTAMP(access_date) / (@t * 60)) * (@t * 60)) AS access_date,
1 AS counter
FROM
tmp_user
@yukihirai0505
yukihirai0505 / import.sql
Created December 11, 2015 13:39
CSVファイルのインポート
LOAD DATA LOCAL INFILE 'CSVファイルのフルパス' INTO TABLE [テーブル名] FIELDS TERMINATED BY ',' ENCLOSED BY '"'
@yukihirai0505
yukihirai0505 / calendar.sql
Created February 10, 2016 09:24
ストアドプロシージャで指定した日付から現在日付までのカラムをもったテーブルを作成する。
USE `[データベース名]`;
DROP PROCEDURE IF EXISTS `[ストアドプロシージャの名前]`;
DELIMITER $$
USE `[データベース名]`$$
CREATE DEFINER =`root`@`localhost` PROCEDURE `[ストアドプロシージャの名前]`(IN targetDate DATE)
BEGIN
/************************
テンポラリーテーブルをDROP
@yukihirai0505
yukihirai0505 / create_event_data.sql
Last active February 21, 2016 03:12
指定日から1ヶ月分のデータを動的に作成するストアドプロシージャ
/* ストアドプロシージャを使用したいDBを選択 */
USE [データベース名];
/* 今回使用したいストアドプロシージャの名前(初めて作成するときはいらない) */
DROP procedure IF EXISTS `[プロシージャ名]`;
/************************
通常のSQLだと「;(セミコロン)」でSQLの区切りを意味しているが今回はそれを「$$」に変えますよという意味。
これを使用することでSQLを一気に終端の$$まで実行することができる。
*************************/
DELIMITER $$
@yukihirai0505
yukihirai0505 / weekly.gs
Last active February 27, 2016 01:49
週毎に実行してくれるスクリプト
var bk = SpreadsheetApp.getActiveSpreadsheet();
var weeklySh = bk.getSheetByName("[シート名]");
/**
先週分のanalyticsのデータをセットする
**/
function setLastWeekData() {
// 毎週月曜日に実行されるので7日前が月曜日で1日前は日曜日
var today = new Date();
// 実行日が月曜日のとき
@yukihirai0505
yukihirai0505 / dateUtil.gs
Last active February 27, 2016 01:50
日付を扱う便利スクリプト
/**
指定日を文字列で取得する
@param nDaysAgo 何日前か
@return date
**/
function getLastNdays(nDaysAgo) {
var today = new Date();
var before = new Date();
before.setDate(today.getDate() - nDaysAgo);
return DateFormat(before);
@yukihirai0505
yukihirai0505 / analytics.gs
Last active March 8, 2016 04:43
GASでGoogleAnalyticsのPV・UUを取得してスプレッドシートにセットするスクリプト
/**
アナリティクスからデータを取得してくる
@param startDate 開始日
@param endDate 終了日
@param optArgs metricsやfilterなど
@return analyticsの結果
**/
function getAnalyticsData(startDate, endDate, optArgs) {
var profileId = [ビューID];
var tableId = 'ga:' + profileId;
@yukihirai0505
yukihirai0505 / ProductIteratorInTrait.scala
Created December 9, 2016 11:12
how to use productIterator in trait
/***
* Base trait for CSV
*/
trait BaseCsv {
def toStringSeq: Seq[String] = {
this.productIterator.map(_.asInstanceOf[Option[String]].getOrElse("")).toSeq
}
def productIterator: Iterator[Any]
}
USE [DATABASE NAME];
DROP procedure IF EXISTS `[PROCEDURES NAME]`;
DELIMITER $$
USE [TABLE NAME]$$
CREATE DEFINER=`[USER NAME]`@`[HOST NAME]` PROCEDURE `[PROCEDURES NAME]`(IN targetDate date)
BEGIN
/* VARIABLE FOR CURSOR */