반응형

MySQL 102

데이터베이스 다이어그램 자동 생성 MySQL

데이터베이스 다이어그램 자동 생성 MySQL 마감되었습니다. 이 질문은 충족되지 않습니다.스택 오버플로우 가이드라인현재 답변을 받고 있지 않습니다. 7년 전에 문을 닫았어요 서적, 도구, 소프트웨어 라이브러리 등에 대한 권장 질문을 허용하지 않습니다.당신은 그 질문을 사실과 인용문으로 대답할 수 있도록 편집할 수 있다. 서적, 도구, 소프트웨어 라이브러리, 튜토리얼 또는 기타 오프사이트 리소스를 추천 또는 찾도록 요청하는 질문은 의견과 스팸을 유도하는 경향이 있기 때문에 스택 오버플로우에서는 주제를 벗어납니다.대신, 문제 및 문제를 해결하기 위해 지금까지 수행된 작업을 설명하십시오. 이 질문을 개선하다 모든 프로젝트를 시작할 때 디아를 열고 데이터베이스 다이어그램을 만드는 데 지쳤어요.MySQL 데이터베..

sourcecode 2022.09.26

MySQL에서 Join을 사용하여 삭제

MySQL에서 Join을 사용하여 삭제 테이블을 작성하는 스크립트는 다음과 같습니다. CREATE TABLE clients ( client_i INT(11), PRIMARY KEY (client_id) ); CREATE TABLE projects ( project_id INT(11) UNSIGNED, client_id INT(11) UNSIGNED, PRIMARY KEY (project_id) ); CREATE TABLE posts ( post_id INT(11) UNSIGNED, project_id INT(11) UNSIGNED, PRIMARY KEY (post_id) ); 내 PHP 코드에서 클라이언트를 삭제할 때 모든 프로젝트 투고를 삭제하고 싶다. DELETE FROM posts INNER JOI..

sourcecode 2022.09.26

MySQL에서 JSON 어레이를 검색하는 방법

MySQL에서 JSON 어레이를 검색하는 방법 일부 MySQL 테이블에 data라는 이름의 JSON 열이 있으며 이 열은 단일 배열이라고 가정합니다.예를 들어, 데이터에는 다음이 포함됩니다. [1,2,3,4,5] 이제 배열 요소 중 하나가 2보다 큰 데이터 열이 있는 모든 행을 선택합니다.이게 가능합니까? 다음을 시도했지만 배열의 값에 관계없이 항상 참인 것 같습니다. SELECT * from my_table WHERE JSON_EXTRACT(data, '$[*]') > 2; 다음과 같이 정수 배열을 검색할 수 있습니다. JSON_CONTAINS('[1,2,3,4,5]','7','$') Returns: 0 JSON_CONTAINS('[1,2,3,4,5]','1','$') Returns: 1 다음과 같이 ..

sourcecode 2022.09.25

MySQL "WITH" 절

MySQL "WITH" 절 MySQL을 사용하여 "WITH" 절을 사용하여 보기를 생성하려고 합니다. WITH authorRating(aname, rating) AS SELECT aname, AVG(quantity) FROM book GROUP BY aname 하지만 MySQL은 이를 지원하지 않는 것 같습니다. 저는 이것이 매우 표준적이라고 생각했고 Oracle도 이를 지원한다고 확신합니다.MySQL에 WITH 절을 사용하도록 강제할 수 있는 방법이 있습니까?MyISAM과 innoDB 엔진으로 시험해 보았습니다.둘 다 작동이 안 돼요.업데이트: MySQL 8.0은 재귀적 CTE를 포함한 일반적인 테이블 표현식의 기능을 드디어 도입했습니다. 다음 블로그에서 이를 알립니다.http://mysqlserver..

sourcecode 2022.09.24

mySQL replace()를 사용하여 여러 레코드의 문자열을 대체하려면 어떻게 해야 합니까?

mySQL replace()를 사용하여 여러 레코드의 문자열을 대체하려면 어떻게 해야 합니까? 데이터베이스에는 잘못된 데이터가 한 열에 있는 다수의 레코드가 있습니다. 임베디드 에디터가 유출되어서는 안 될 것들을 탈출하여 생성된 링크를 끊는 것입니다. 모든 레코드의 잘못된 문자를 대체하기 위해 쿼리를 실행하려고 하는데 방법을 찾을 수 없습니다.MySQL에서 기능을 찾았는데 쿼리 내에서 어떻게 사용할 수 있나요? 예를 들어 문자열을 바꾸려면 올바른 구문은 무엇입니까?<실제 각도보다 작은 브래킷 포함(

sourcecode 2022.09.24

1개의 쿼리로 여러 개의 문을 노드 검출

1개의 쿼리로 여러 개의 문을 노드 검출 사용하고 있다nodejs 10.26+express 3.5+node-mysql 2.1.1+MySQL-Server Version: 5.6.16. 4개의 DELETE가 있고 데이터베이스 요청은 1개뿐이기 때문에 DELETE 명령어를 ";"로 연결했지만 항상 실패합니다. var sql_string = "DELETE FROM user_tables WHERE name = 'Testbase';"; sql_string += "DELETE FROM user_tables_structure WHERE parent_table_name = 'Testbase';"; sql_string += "DELETE FROM user_tables_rules WHERE parent_table_name ..

sourcecode 2022.09.24

MySQL의 부울 값에 대한 부울 vs tinyint(1)

MySQL의 부울 값에 대한 부울 vs tinyint(1) MySQL 데이터베이스에서 부울 값에 가장 적합한 열 유형은 무엇입니까? 용 i i i i를 쓴다.boolean제는 '아까운 친구'를 쓰고 있어요.tinyint(1).이러한 데이터 유형은 동의어입니다.여기서 다른 접근방식을 취해서 컴파일러/데이터베이스와 마찬가지로 당신의 코드를 이해하는 것이 당신의 동료 개발자들에게 중요하다는 것을 제안합니다.「」를 사용합니다.boolean를 사용하는 과 같은 을 할 수 .tinyint하지만, 그것은 의미론적으로 당신의 의도가 무엇인지 전달할 수 있는 장점이 있고, 그것은 가치가 있다. 「 」를 하는 경우tinyint 여러분이 볼 수 게 아닙니다.0 ★★★★★★★★★★★★★★★★★」1. A boolean ★★★t..

sourcecode 2022.09.23

MySQL에서 변수를 선언하는 방법

MySQL에서 변수를 선언하는 방법 두 번째 쿼리에서 사용할 수 있도록 mysql에서 변수를 선언하려면 어떻게 해야 합니까? 다음과 같이 쓰고 싶습니다. SET start = 1; SET finish = 10; SELECT * FROM places WHERE place BETWEEN start AND finish; MySQL에는 주로 세 가지 유형의 변수가 있습니다. 사용자 정의 변수(프리픽스 포함)@): 사용자 정의 변수는 선언하거나 초기화하지 않고 액세스할 수 있습니다.초기화되지 않은 변수를 참조할 경우 값은 다음과 같습니다.NULL스트링의 종류입니다. SELECT @var_any_var_name 다음을 사용하여 변수를 초기화할 수 있습니다.SET또는SELECT스테이트먼트: SET @start = 1..

sourcecode 2022.09.23

MySQL에서 테이블 이름이 변수인 경우 선택하는 방법

MySQL에서 테이블 이름이 변수인 경우 선택하는 방법 테이블명을 취득하는 경우는, 다음과 같은 설정 변수로부터 취득할 필요가 있습니다. SET @ID_1 = (SELECT ID FROM `slider` LIMIT 0,1); SET @Cat = (SELECT Category FROM `slider` LIMIT 0,1); select * from @Cat where ID = @ID_1 하지만 MySQL에서 오류를 출력할 수 있습니다.누군가 어떻게 해야 하는지 보여줄 수 있을까요?MySQL에서는 아직 걸음마 단계이기 때문입니다.당신은 준비된 진술서를 가지고 이것을 해야 할 것이다.예를 들어 다음과 같습니다. SET @s = CONCAT('select * from ', @Cat, ' where ID = ', ..

sourcecode 2022.09.22

MySQL에서 날짜 범위의 중복 확인

MySQL에서 날짜 범위의 중복 확인 다음 표는 세션(이벤트)을 저장하기 위해 사용됩니다. CREATE TABLE session ( id int(11) NOT NULL AUTO_INCREMENT , start_date date , end_date date ); INSERT INTO session (start_date, end_date) VALUES ("2010-01-01", "2010-01-10") , ("2010-01-20", "2010-01-30") , ("2010-02-01", "2010-02-15") ; 범위 간에 충돌이 발생하는 것은 원치 않습니다. 예를 들어 2010-01-05부터 2010-01-25까지 새로운 세션을 삽입해야 합니다. 충돌하는 세션을 알고 싶습니다. 다음은 질문입니다. SEL..

sourcecode 2022.09.22
반응형