Skip to content

Instantly share code, notes, and snippets.

-- todos os registros
SELECT * FROM tracks;
-- musica de maior duração
SELECT * FROM tracks ORDER BY duration DESC LIMIT 1;
-- mais antiga
SELECT * FROM tracks ORDER BY release_date ASC LIMIT 1;
-- musica maior nome
SELECT *, length(name) AS char_qtt FROM tracks ORDER BY LENGTH(name) DESC LIMIT 1;
SELECT *, MAX(LENGTH(name)) as maior_nome FROM tracks;
-- album menor nome
-- todos os registros
-- musica de maior duração
-- mais antiga
-- musica maior nome
-- album menor nome
// src/components/Posts.js
import React from 'react';
import PropTypes from 'prop-types';
class Posts extends React.Component {
render(){
const { posts } = this.props;
return (
@isaacbatst
isaacbatst / SetupTFC.md
Last active May 12, 2022 14:04
Checklist do Setup para começar o TFC

Setup para iniciar o 🏐 Trybe Futebol Clube 🏐

Programas instalados

  • Node v16.15.0 (LTS)
  • NPM v8.5
  • Docker Compose v1.29
enum PizzaFlavour {
CALABREZA = 'CALABREZA',
FRANGO_CATUPIRY = 'FRANGO_CATUPIRY',
NORDESTINA = 'NORDESTINA',
}
type PizzaFlavourKey = keyof typeof PizzaFlavour;
const pizzaFlavourPriceMap: Map<PizzaFlavourType, number> = new Map<PizzaFlavourKey, number>([
[PizzaFlavour.CALABREZA, 10],
export default class Person {
constructor(
protected readonly _name: string,
protected _birthDate: Date
) {
}
private calcAge(){
const timeDiff = Math.abs(Date.now() - new Date(this._birthDate).getTime());
export default class Person {
public readonly age: number
constructor(
protected readonly _name: string,
protected readonly birthDate: Date
) {
this.age = this.calcAge(birthDate)
// idade só é calculada na construção, então se o birthDate mudar, a idade não será atualizada
// faz sentido caso o birthDate não deva ser mudado também
// Vamos ver os seguintes topicos hoje
// arrays/tuplas, como tipar objetos, como usar aliases (que já vimos levemente ontem), classes, interfaces e generics
// vamos incrementar o exemplo da aula passada
// Vamos criar uma arquivo trybeClass.ts
let trybeClass: Object = {};
// Já tipamos nossa aula. Mas qual o problema aqui?
// ativa o modo estrito do JS
'use strict';
// importa libs para a configuração do Sequelize
const fs = require('fs');
const path = require('path');
const Sequelize = require('sequelize');
// recupera o nome do arquivo "index.js"
const basename = path.basename(__filename);
function isValidCPF(cpf) {
// Validar se é String
if (typeof cpf !== 'string') return false
// Tirar formatação
cpf = cpf.replace(/[^\d]+/g, '')
// Validar se tem tamanho 11 ou se é uma sequência de digitos repetidos
if (cpf.length !== 11 || !!cpf.match(/(\d)\1{10}/)) return false