하나의 데이터베이스에 테이블이 있는데이 db x를 호출합니다. 나는 다른 데이터베이스를 가지고 있는데, y라고 부른다. x.some_table에서 y.some_table으로 데이터를 복사하고 싶습니다. 데이터베이스의 일부 열이 의미가 없으므로 테이블의 정확한 복사본을 만들고 싶지 않습니다. b. 다음 쿼리를 사용합니다 :다른 db에서 중첩 된 select mysql 삽입 double 값을 자릅니다.
INSERT INTO y.some_table (a_field) SELECT a_field FROM x.some_table;
a_filed는 두 테이블 모두 DOULBE (17,0)로 정의됩니다. 내가 이것을 실행하면 : USE y; SELECT a_field FROM x;
그런 다음 전체 값으로 출력됩니다 - 부동 소수점자를 자르지 않습니다. 그러나, 내가 보여준 첫 번째 쿼리를 사용하여 삽입 한 후, y의 some_table.a_field에 정수 만 남게됩니다. 부동 소수점 나머지는 잘립니다.
내가 뭘 잘못하고 있니? 감사.
감사합니다. 그게 문제 야. 두 가지 모두 그렇게 정의 되었기 때문에 여기를 보려고 생각하지 않았습니다. 아마도 내 프로그램은 어떤 스키마를보고 있는지 혼란 스러울 것입니다. 나는 커맨드 라인을 확인하고 볼 것이다. 감사. –